首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

VB.NET 連接 MySQL 類庫實作:ODBC 3.51 驅動程式封裝與 DataSet 操作範例

     編輯:關於SqlServer

前置需求

  1. MySQL ODBC 3.51 Driver:官方下載
  2. Microsoft ODBC.NET Provider:官方下載

類庫架構三大核心類別

類別職責
ManipStringForMySQLSQL 字串預處理(跳脫、型別轉換、防注入)
MySQL_Requettes執行查詢/非查詢,回傳 DataSet/DataReader
MySQL_Utils連線測試、伺服器狀態檢查、版本資訊

核心方法:MyODBCDataset 回傳 DataSet


Public Shared Function MyODBCDataset(ByVal ReqSQL As String, _
    ByVal LaBase As String, ByVal Server As String, _
    ByVal PassWord As String, ByVal User As String, _
    ByVal NomDataSet As String) As DataSet

    ' 建立 ODBC 連線字串
    Dim MyConString As String = _
        "DRIVER={MySQL ODBC 3.51 Driver};SERVER=" & Server & _
        ";DATABASE=" & LaBase & _
        ";UID=" & User & _
        ";PASSWORD=" & PassWord & _
        ";OPTION=3;"

    Dim MyODBCConnexion As New OdbcConnection(MyConString)
    Try
        Dim ds As New DataSet()
        Dim cmd As New OdbcDataAdapter(ReqSQL, MyConString)
        cmd.Fill(ds, NomDataSet)
        MyODBCConnexion.Close()
        Return ds
    Catch MyOdbcException As OdbcException
        HttpContext.Current.Response.Write(MyOdbcException.ToString)
    Catch MyException As Exception
        HttpContext.Current.Response.Write(MyException.ToString)
    End Try
End Function

呼叫範例


Dim MonDatasetTemp As DataSet = MySQL_Requettes.MyODBCDataset( _
    SQL, _
    constantes.ODBCBase, _
    constantes.ODBCServer, _
    constantes.ODBCPwd, _
    constantes.ODBCUser, _
    "MonDataset")

關鍵實作細節

  • 連線字串參數:OPTION=3 為 ODBC 選項位元組合(如 FOUND_ROWS、BIG_PACKETS 等),視驅動版本調整
  • 資源釋放:範例僅關閉連線,建議加入 Using 區塊或 Finally 確保 Dispose()
  • 參數化查詢:生產環境務必使用 OdbcCommand.Parameters 避免 SQL 注入
  • 連線池:ODBC.NET 自動啟用連線池,連線字串完全相同即可複用

現代化替代方案建議

MySQL ODBC 3.51 屬舊版驅動,新專案強烈建議:

  1. MySQL Connector/NET (官方 ADO.NET Provider):原生 Managed 代碼,效能更好、功能完整、支援 Entity Framework
  2. NuGet 安裝:Install-Package MySql.Data 或 MySqlConnector (社區高效能版)
  3. 程式碼遷移:將 OdbcConnection/Command/Adapter 替換為 MySqlConnection/Command/Adapter,API 高度相容
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved