首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

VC/Delphi/VB 連接 MySQL 實戰:MyODBC 驅動手動註冊表配置與 DSN 建立步驟

     編輯:MySQL 資料庫相關知識

兩種連接架構

方案原理優點缺點適用
MySQL C API (libmysql.dll)直接呼叫原生函數效能最高、功能完整開發難度高、非 COMC/C++、BCB、Delphi (高階)
MyODBC (ODBC 驅動)標準 ODBC 介面通用性強、支援 VB/ASP/Delphi/VC效能略低、需配置 DSNVB、ASP、Delphi、VC (快速開發)

MyODBC 手動部署 (僅複製 myodbc.dll)

  1. 下載 myodbc.dll (約數百 KB),複製至:
    • Win9x:C:\Windows\System\
    • WinNT/2K/XP:C:\WINNT\System32\ 或 C:\Windows\System32\
  2. 建立註冊表檔 myodbc.reg:
    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\MyODBC Driver]
    "UsageCount"=dword:00000002
    "Driver"="C:\\WINNT\\System32\\myodbc.dll"
    "Setup"="C:\\WINNT\\System32\\myodbc.dll"
    "SQLLevel"="1"
    "FileUsage"="0"
    "DriverODBCVer"="02.50"
    "ConnectFunctions"="YYY"
    "APILevel"="1"
    "CpTimeout"="120"
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers]
    "MyODBC Driver"="installed"
    注意:路徑雙反斜線、Win2K/XP 用 Version 5.00,Win9x 用 4.00。
  3. 雙擊 myodbc.reg 匯入註冊表。
  4. 開啟「ODBC 資料來源管理員」 (控制台 → 系統管理工具) → 新增「系統 DSN」 → 選擇 MyODBC Driver → 設定:
Data Source Name: MyMySQL
Description: MySQL Test
Server: localhost (或 IP)
User: root
Password: ****
Database: testdb
Port: 3306

VB/ASP 連接範例

' VB / ASP (ADO)
Dim conn, rs
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "DSN=MyMySQL;UID=root;PWD=pass;"
Set rs = conn.Execute("SELECT * FROM users")
' ... 使用 rs
rs.Close: conn.Close

Delphi 連接範例 (ADO)

uses ADODB, DB;
var
  Conn: TADOConnection;
  Query: TADOQuery;
begin
  Conn := TADOConnection.Create(nil);
  Conn.ConnectionString := 'DSN=MyMySQL;UID=root;PWD=pass;';
  Conn.LoginPrompt := False;
  Conn.Open;

  Query := TADOQuery.Create(nil);
  Query.Connection := Conn;
  Query.SQL.Text := 'SELECT * FROM users';
  Query.Open;
  // 使用 Query
end;

常見問題

  • Data source name not found:DSN 名稱拼寫錯誤、未建立系統 DSN (User DSN 僅當前用戶可見)。
  • Driver not capable:MyODBC 版本與 MySQL 服務器版本不匹配 (建議驅動版本 ≥ 服務器版本)。
  • 中文亂碼:連接字串加 CHARSET=gbk 或 utf8;MyODBC 3.51+ 支援 Option=3 (設定字元集)。

現代化建議

新專案建議改用 MySQL Connector/ODBC 8.0+ (官方支援 Unicode、TLS 1.2、Authentication Plugin),或語言原生驅動 (MySql.Data for .NET, mysql-connector-python, go-sql-driver/mysql 等)。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved