Menggunakan parameter untuk memasukkan data ke dalam pangkalan data Access
Memasukkan data yang mengandungi aksara khas ke dalam pangkalan data Access boleh menjadi mencabar kerana isu petikan tunggal. Menggunakan parameter adalah cara yang berkesan untuk menyelesaikan masalah ini.
Berikut ialah cara mengubah suai kod anda untuk menggunakan parameter dan bukannya nilai berkod keras:
a) Gantikan parameter sebenar dengan ruang letak:
Dalam atribut cmd.CommandText
, gantikan nilai sebenar dengan ruang letak yang diawali dengan @
:
<code class="language-csharp">cmd.CommandText = @"INSERT INTO bookRated([title], [rating], [review], [frnISBN], [frnUserName]) VALUES (@title, @rating, @review, @ISBN, @userName)";</code>
b) Tambahkan contoh OleDbParameter:
Buat contoh OleDbParameter
dan tambahkannya pada atribut DbCommand.Parameters
. Pastikan nama parameter sepadan dengan nama pemegang tempat dalam cmd.CommandText
:
<code class="language-csharp">// 创建包含占位符的命令 cmd.CommandText = "INSERT INTO bookRated " + "([title], [rating], [review], [frnISBN], [frnUserName]) " + "VALUES (@title, @rating, @review, @isbn, @username)"; // 添加命名参数 cmd.Parameters.AddRange(new OleDbParameter[] { new OleDbParameter("@title", title), new OleDbParameter("@rating", rating), // ... 添加其他参数 });</code>
Contoh:
Kod yang diubah suai adalah seperti berikut:
<code class="language-csharp">[WebMethod] public void bookRatedAdd(string title, int rating, string review, string ISBN, string userName) { using (OleDbConnection conn = new OleDbConnection( "Provider=Microsoft.Jet.OleDb.4.0;" + "Data Source=" + Server.MapPath("App_Data\BookRateInitial.mdb")); { conn.Open(); // DbCommand 也实现了 IDisposable using (OleDbCommand cmd = conn.CreateCommand()) { // 创建包含占位符的命令 cmd.CommandText = "INSERT INTO bookRated " + "([title], [rating], [review], [frnISBN], [frnUserName]) " + "VALUES (@title, @rating, @review, @isbn, @username)"; // 添加命名参数 cmd.Parameters.AddRange(new OleDbParameter[] { new OleDbParameter("@title", title), new OleDbParameter("@rating", rating), // ... 添加其他参数 }); // 执行 cmd.ExecuteNonQuery(); } } }</code>
Dengan menggunakan parameter, aksara khas yang dimasukkan ke dalam teks boleh dikendalikan dengan betul, memastikan integriti data.
Atas ialah kandungan terperinci Bagaimana untuk Memasukkan Data dengan Aksara Khas ke dalam Pangkalan Data Akses Menggunakan Parameter dengan Selamat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!