Fill(DataSet) 丟 Commands out of sync 錯誤。專案無法升級資料庫版本(舊系統綁定),必須在 .NET 環境下寫入資料。
MySQLDriverCS 是開源專案,定位為 MySQL .NET Data Provider,類似 SqlClient 之於 SQL Server。特點:
下載點: SourceForge MySQLDriverCS 專案頁
using MySQLDriverCS;
string connStr = "Host=192.168.1.100;Database=old_db;User=root;Password=123456;";
using (MySQLConnection conn = new MySQLConnection(connStr)) {
conn.Open();
using (MySQLCommand cmd = new MySQLCommand("INSERT INTO logs(msg) VALUES('test')", conn)) {
cmd.ExecuteNonQuery();
}
}
若在 SQL Server 用 OPENROWSET 或 Linked Server,建議改為 **ASP.NET / C# 專案直連寫入**,再由 SQL Server 透過 Service Broker、Message Queue 或定時 Job 同步,避免跨異構資料庫的分散式交易地雷。
Charset=gb2312 或 utf8(視資料庫建表編碼)。?param 語法,防注入請用參數化,別拼字串。Max Pool Size。MySQLException,錯誤碼對照 MySQL 3.23 文件。多數 .NET 開發者只知 MySql.Data(官方)與 Devart dotConnect(商業),MySQLDriverCS 早期專注舊版本相容,文檔少、社群小,但對 **MySQL 3.23/4.0 這類考古級版本** 是少數能跑的選項之一。
面對 **MySQL 3.23.49 這種博物館級資料庫**,別在 ODBC、Connector/J、CoreLab 之間撞牆。**MySQLDriverCS** 才是為 .NET 量身打造的鑰匙:免 DSN、單一 DLL、原生支援舊版。下載、引用、連線、寫入,四步搞定。舊系統維護也能優雅收工。