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

C# 使用參數化 SQL 語句存取 MySQL 資料庫

     編輯:關於C語言

參數化查詢基本範例

在 C# 中使用 MySQL Connector/NET 進行參數化查詢,可有效防止 SQL 注入並簡化特殊字元處理。以下是插入資料的基本範例:

MySQLConnection con = null;
MySQLCommand cmd = null;
string nameStr = "Sample value passed \"";
con = new MySQLConnection("server=localhost;database=db_name;uid=user;pwd=passWord;pooling=false;");
con.Open();
cmd = new MySQLCommand("insert into MyTable values (null, ?ParName);", con);
cmd.Parameters.AddWithValue("?ParName", (string)nameStr.Replace("\"", "^"));
cmd.ExecuteNonQuery();
con.Close();

關鍵要點

  • 參數標記:MySQL 使用問號(?)作為參數前綴,如 ?ParName。
  • 建立 Command:在 MySQLCommand 建構式中指定 SQL 語句與連線物件。
  • 設定參數值:透過 Parameters.AddWithValue 方法為每個參數指定值,驅動程式會自動推斷資料型別。

優勢

參數化查詢不僅提升安全性,還能讓資料庫快取查詢計畫,提高重複執行時的效能。對於包含引號、逗號等特殊字元的資料,無需手動轉義,由驅動程式妥善處理。

注意事項

  • 確保連線字串正確,包含伺服器、資料庫、帳號、密碼等資訊。
  • 執行 ExecuteNonQuery 後記得關閉連線,或使用 using 區塊自動管理資源。
  • 參數名稱在 SQL 與 AddWithValue 中必須一致(包含問號)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved