Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Memasukkan Data dengan Aksara Khas ke dalam Pangkalan Data Akses Menggunakan Parameter dengan Selamat?

Bagaimana untuk Memasukkan Data dengan Aksara Khas ke dalam Pangkalan Data Akses Menggunakan Parameter dengan Selamat?

Patricia Arquette
Lepaskan: 2025-01-22 16:22:13
asal
712 orang telah melayarinya

How to Safely Insert Data with Special Characters into an Access Database Using Parameters?

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>
Salin selepas log masuk

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>
Salin selepas log masuk

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>
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan