前置需求
- MySQL ODBC 3.51 Driver:下載連結
- Microsoft ODBC.NET Provider:下載連結
類庫架構
| 類別 | 功能 |
ManipStringForMySQL | 處理字串轉義與格式化 |
MySQL_Requettes | 發送 SQL 指令、執行查詢 |
MySQL_Utils | 資料庫連線測試與工具方法 |
核心方法:取得 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
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
Return Nothing
End Function
呼叫範例
Dim MonDatasetTemp As DataSet = MySQL_Requettes.MyODBCDataset( _
SQL, _
constantes.ODBCBase, _
constantes.ODBCServer, _
constantes.ODBCPwd, _
constantes.ODBCUser, _
"MonDataset")
現代化建議
- ODBC 3.51 屬舊版驅動,新專案建議使用 MySQL Connector/NET (NuGet:
MySql.Data),效能更好、支援 ADO.NET 標準介面。
- 連線字串範例:
Server=localhost;Database=mydb;Uid=root;Pwd=pass;SslMode=None;
- 搭配
using 區塊確保連線正確釋放。