Delphi3.0中連接數據庫的三種方式

  Delphi 3.0 對 訪 問 數 據 庫 提 供 了 強 有 力 的 支 持, 利 用Delphi 3.0 可 以 開 發 出 功 能 強 大 的 數 據 庫 應 用 程 序。
  ---- Delphi 的 可 視 化 功 能 相 當 強 大, 制 作 一 個 簡 單 的 僅 對 數 據 進 行 查 看 和 維 護 的 程 序 十 分 容 易, 可 以 不 寫 任 何 代 碼 就 能 實 現 !Delphi 3.0 中 訪 問 數 據 庫 的 方 式 有 三 種: 直 接 訪 問, 如 訪 問Paradox 和DBase 數 據 庫; 通 過ODBC 訪 問, 如 訪 問Access、Foxpro 等 數 據 庫; 通 過 內 嵌(Native) 方 式 訪 問 數 據 庫, 如 訪 問SQL Server、Oracle、DB2 等。 在Delphi 中, 可 以 使 用Table 控 件 或/ 和Query 控 件 來 訪 問 數 據 庫, 二 者 的 設 置 和 用 法 都 差 不 多, 因 此 下 面 僅 以Table 控 件 爲 例 說 明 這 三 種 方 式 的 特 點 和 用 法。
  ---- 1. 直 接 訪 問
  ---- Delphi 可 以 直 接 訪 問Paradox 和DBase 這 兩 個 桌 面 型 的 數 據 庫 系 統。 訪 問 這 兩 種 類 型 的 數 據 庫 時 不 需 要 特 別 的 設 置, 只 需 要 把 文 件 路 徑 賦 給Table 控 件 的 屬 性DatabaseName 就 可 以 訪 問 該 路 徑 下 的 數 據 庫 了。 當 然, 也 可 以 事 先 建 立 映 射 數 據 庫 路 徑 的 數 據 庫 別 名, 然 後 把Table 控 件 的DatabaseName 屬 性 設 置 爲 相 應 的 數 據 庫 別 名。
  ---- 2. 通 過ODBC 訪 問
  ---- 訪 問Paradox 和DBase 以 外 的 數 據 庫, 通 常 是 通 過ODBC 來 實 現 的。Delphi 可 以 訪 問 支 持ODBC 的 數 據 庫 系 統, 如Access、SQL Server 和Oracle 等。 當 然, 通 過ODBC 訪 問 數 據 庫 時, 首 先 要 使 用Windows 的 控 制 面 板 或Delphi 的 數 據 庫 引 擎(BDE) 建 立ODBC 數 據 源。
  ---- Delphi 提 供 了Database 控 件, 該 控 件 的 作 用 有: 在 應 用 程 序 的 控 制 下 和 數 據 庫 系 統 建 立 連 接、 進 行 事 務 處 理 等。 在 數 據 庫 應 用 程 序 中, 可 以 使 用Database 控 件, 也 可 以 不 使 用。 如 果 不 使 用Database 控 件, 可 以 直 接 把ODBC 數 據 源 的 名 稱 賦 給Table 控 件 的 屬 性DatabaseName 而 達 到 訪 問 該 數 據 庫 的 目 的。 這 種 方 式 的 弊 端 是 在 程 序 運 行 時 由Delphi 系 統 自 動 彈 出 登 錄 到 數 據 庫 的 英 文 界 面 的 窗 口, 既 不 美 觀 又 不 便 于 控 制。 因 此, 筆 者 建 議 在 數 據 庫 應 用 程 序 中 使 用Database 控 件 來 登 錄 到 數 據 庫 系 統。 把Table 控 件 與Database 控 件 關 聯 的 方 法 是 把 其DatabaseName 屬 性 值 指 定 爲Database 控 件 的DatabaseName 屬 性 值。 一 個Database 控 件 可 以 管 理 若 幹 個Table 控 件。 和Database 控 件 建 立 關 聯 以 後, 只 要 該Database 控 件 已 經 和 數 據 庫 建 立 了 連 接,Table 控 件 就 可 以 直 接 訪 問 數 據 庫 而 無 須 再 次 登 錄。
  ---- 3. 通 過 內 嵌 方 式 訪 問
  ---- Delphi 中 可 以 不 通 過ODBC, 而 以 內 嵌 方 式 訪 問SQL Server、Oracle、DB2 等 數 據 庫 系 統。 這 需 要 使 用 數 據 庫 別 名 來 指 定 數 據 庫, 數 據 庫 別 名 可 以 事 先 建 立, 也 可 以 在 程 序 運 行 時 動 態 創 建。 前 者 稱 爲 靜 態 別 名, 後 者 稱 爲 動 態 別 名。 使 用 數 據 庫 別 名 來 訪 問 數 據 庫 的 方 法 和 使 用ODBC 數 據 源 的 情 形 相 同, 這 裏 不 再 累 述。 通 過 內 嵌 方 式 訪 問 數 據 庫 的 靜 態 別 名 必 須 在BDE 中 建 立。 以 訪 問SQL Server 數 據 庫 爲 例, 在 建 立 別 名 時 必 須 指 定 數 據 庫 服 務 器 的 名 稱(SERVER NAME)、 主 機 名(HOST NAME) 以 及 要 訪 問 的 數 據 庫 名 稱(DATABASE NAME), 可 以 指 定 登 錄 用 戶 名(USER NAME) 和 口 令(PASSWORD) 等。 通 過 動 態 創 建 的 別 名 來 訪 問 數 據 庫 必 須 使 用Database 控 件。 如 何 設 置Database 控 件 中 訪 問 數 據 庫 的 參 數 呢 ? 用 鼠 標 雙 擊Database 控 件, 出 現 參 數 設 置 窗 口, 在"Driver name" 一 欄 選 擇 要 訪 問 的 數 據 庫 系 統, 如"MSSQL", 然 後 選 擇 按 鈕"Defaults", 就 會 把BDE 中 該 數 據 庫 系 統 所 需 的 參 數 名 稱 和 缺 省 值 加 入 到"Parameter overrides" 列 表 中。 根 據 實 際 情 況 更 改 參 數 中 的"SERVER NAME"、"DATABASE NAME" 等 項。 然 後 選 擇 按 鈕"OK" 就 可 以 了。 需 要 說 明 的 兩 點 是, 以 內 嵌 方 式 訪 問 數 據 庫 需 要 在 安 裝Delphil 3.0 時 指 定 安 裝SQL Link;Query 控 件 的SQL 語 句 不 能 以 分 號 結 尾。
  ---- 結 論
  ---- 通 過 內 嵌 方 式 訪 問 數 據 庫 與 通 過ODBC 訪 問 數 據 庫 相 比, 前 者 的 速 度 要 快 一 些。 而 且, 內 嵌 方 式 可 以 在 程 序 中 動 態 地 設 置 連 接 數 據 庫 所 需 的 參 數, 用 戶 不 必 設 置ODBC 數 據 源, 這 就 降 低 了 對 用 戶 技 術 水 平 的 要 求, 並 且 減 少 了 用 戶 的 工 作 量。 從 系 統 配 置 的 難 易 和 複 雜 程 度 來 看, 使 用 內 嵌 方 式 開 發 出 的 數 據 庫 應 用 系 統 更 便 于 普 通 用 戶 使 用。 因 此, 筆 者 建 議 在 開 發 較 大 型 的 應 用 系 統 時, 最 好 通 過 內 嵌 方 式 來 訪 問 數 據 庫。
  
 
Delphi 3.0中連接數據庫的三種方式
  Delphi 3.0 對 訪 問 數 據 庫 提 供 了 強 有 力 的 支 持, 利 用Delphi 3.0 可 以 開 發 出 功 能 強 大 的 數 據 庫 應 用 程 序。    ...查看完整版>>Delphi 3.0中連接數據庫的三種方式
 
Java項目中連接數據庫的幾種方式和範例
  1,最原始的寫法(也是一般初學者的寫法)  首先import數據庫連接基礎類,然後其它的然後就簡單了。實際操作過程中只需加載驅動程序類,之後調用sql語句就行了。以下是一個簡單的程序例子。    //Select.J...查看完整版>>Java項目中連接數據庫的幾種方式和範例
 
Java項目中連接數據庫的幾種方式和範例
  1,最原始的寫法(也是一般初學者的寫法)  首先import數據庫連接基礎類,然後其它的然後就簡單了。實際操作過程中只需加載驅動程序類,之後調用sql語句就行了。以下是一個簡單的程序例子。  //Select.java ...查看完整版>>Java項目中連接數據庫的幾種方式和範例