Google、Associated Press、NASA 等巨頭生產環境大規模採用 MySQL,證明其不只是「免費」優勢,更具高可用、擴展性、生態工具鏈成熟度。
| 提供者 | 性質 | 特點 |
|---|---|---|
| MySQL Connector/Net 1.0 (原 ByteFX.Data) | 開源、免費 | 純 C# 實作、官方維護、含安裝程式/範例/文檔 |
| MySQLDirect .NET Data Provider (Core Lab) | 商業授權 | 功能豐富、效能調優、試用版可下載 |
| 類別 | 職責 |
|---|---|
| MySqlConnection | 管理連線池、開啟/關閉、連線字串解析 |
| MySqlDataAdapter | 填充 DataSet、更新資料庫 (Select/Insert/Update/DeleteCommand) |
| MySqlDataReader | 唯讀、順向、流式讀取 (高效能) |
| MySqlCommand | 執行 SQL/預存過程、參數綁定 |
| MySqlException | 錯誤代碼、訊息、堆疊追蹤 |
<%@ Import Namespace="MySql.Data.MySqlClient" %>
<script runat="server">
void Page_Load() {
string connStr = "server=localhost;database=sitepoint;"; // 測試環境匿名登入
using (MySqlConnection conn = new MySqlConnection(connStr)) {
conn.Open();
MySqlCommand cmd = new MySqlCommand("SHOW DATABASES", conn);
using (MySqlDataReader dr = cmd.ExecuteReader()) {
while (dr.Read()) {
Response.Write(dr.GetString(0) + "<br>");
}
}
}
}
</script>
關鍵點:`ExecuteReader` 回傳 `MySqlDataReader`,`GetString(0)` 取第一欄資料庫名。
MySQL (資料層) + .NET/Mono (應用層) = Windows/Linux/Unix 全平台高彈性開發棧。開源社區雙向支援,降低廠商鎖定風險,提升談判籌碼。