VS (C#/VB.NET) 讀取資料存入 MySQL 失敗,可能型別不匹配、SQL 拼接錯誤、參數缺失。
// C# 範例
string sql = "INSERT INTO `data_table` (`col1`, `col2`, `col3`) VALUES (@v1, @v2, @v3)";
using (var conn = new MySqlConnection(connStr))
using (var cmd = new MySqlCommand(sql, conn)) {
cmd.Parameters.AddWithValue("@v1", value1.ToString());
cmd.Parameters.AddWithValue("@v2", value2.ToString());
cmd.Parameters.AddWithValue("@v3", value3.ToString());
conn.Open();
cmd.ExecuteNonQuery();
}
| .NET 型別 | MySQL 型別 | 備註 |
|---|---|---|
| `int`/`long` | `INT`/`BIGINT` | |
| `double`/`decimal` | `DOUBLE`/`DECIMAL(18,4)` | 金額用 DECIMAL |
| `DateTime` | `DATETIME`/`TIMESTAMP` | 參數直接傳 DateTime 物件 |
| `bool` | `TINYINT(1)`/`BIT` | |
| `byte[]` | `BLOB`/`LONGBLOB` |
VS 存 MySQL 失敗 → **全轉字串存 `VARCHAR` + 參數化查詢 + 檢查 SQL 反引號/引號**。最穩健、最易除錯。正式上線再按型別優化欄位定義。