Rumah pembangunan bahagian belakang Tutorial C#.Net Pertanyaan berparameter dalam C# menggunakan SqlParameter

Pertanyaan berparameter dalam C# menggunakan SqlParameter

Feb 18, 2024 pm 10:02 PM
pernyataan sql Cegah suntikan sql Fungsi dan penggunaan

Pertanyaan berparameter dalam C# menggunakan SqlParameter

Peranan dan penggunaan SqlParameter dalam C#

Dalam pembangunan C#, berinteraksi dengan pangkalan data adalah salah satu tugas biasa. Untuk memastikan keselamatan dan kesahihan data, kami selalunya perlu menggunakan pertanyaan berparameter untuk mengelakkan serangan suntikan SQL. SqlParameter ialah kelas dalam C# yang digunakan untuk membina pertanyaan berparameter Ia menyediakan cara yang selamat dan mudah untuk mengendalikan parameter dalam pertanyaan pangkalan data.

Peranan SqlParameter
Kelas SqlParameter digunakan terutamanya untuk menambah parameter pada pernyataan SQL. Fungsi utamanya adalah seperti berikut:

  1. Mencegah serangan suntikan SQL: Dengan menggunakan SqlParameter, kita boleh melepaskan nilai parameter terlebih dahulu dan memastikan bahawa apabila melaksanakan pertanyaan pangkalan data, nilai parameter tidak akan ditafsirkan sebagai sebahagian daripada pernyataan SQL .
  2. Meningkatkan prestasi: Dalam pertanyaan pangkalan data, rancangan pertanyaan biasanya cache pertanyaan untuk meningkatkan prestasi. Apabila menggunakan SqlParameter, pernyataan pertanyaan yang sama hanya perlu disusun sekali dan kemudian boleh digunakan berulang kali.
  3. Menyokong pelbagai jenis dan saiz data: SqlParameter menyokong pelbagai jenis data biasa, seperti rentetan, integer, tarikh, dll., dan saiz, ketepatan dan tempat perpuluhan parameter boleh ditetapkan mengikut keperluan.

Penggunaan SqlParameter
Di bawah kami menggunakan contoh untuk menunjukkan cara menggunakan SqlParameter untuk membina pertanyaan berparameter.

Andaikan kita mempunyai jadual bernama "Pekerja" yang mengandungi maklumat ID, nama dan gaji pekerja. Kami perlu menanyakan maklumat pekerja yang gajinya lebih besar daripada jumlah yang ditetapkan. Berikut ialah contoh kod menggunakan SqlParameter:

string queryString = "SELECT EmployeeID, FirstName, LastName FROM Employees WHERE Salary > @salary";
using (SqlConnection connection = new SqlConnection(connectionString))
{
    SqlCommand command = new SqlCommand(queryString, connection);
    command.Parameters.Add("@salary", SqlDbType.Decimal).Value = 5000; // 设置参数名称、类型和值

    connection.Open();
    SqlDataReader reader = command.ExecuteReader();

    while (reader.Read())
    {
        int employeeId = (int)reader["EmployeeID"];
        string firstName = reader["FirstName"].ToString();
        string lastName = reader["LastName"].ToString();

        Console.WriteLine($"Employee ID: {employeeId}, Name: {firstName} {lastName}");
    }

    reader.Close();
}
Salin selepas log masuk

Dalam contoh di atas, kami mula-mula mencipta rentetan pertanyaan yang merangkumi nama parameter "@gaji". Kemudian, kami mencipta sambungan pangkalan data dan objek perintah pertanyaan menggunakan SqlConnection dan SqlCommand.

Seterusnya, kami menambah parameter pada arahan pertanyaan dengan memanggil kaedah command.Parameters.Add. Di sini kami menentukan nama, jenis dan nilai parameter. Dalam contoh ini, kami menggunakan SqlDbType.Decimal sebagai jenis parameter dan menetapkan nilai parameter kepada 5000. command.Parameters.Add方法,我们向查询命令中添加了一个参数。在这里,我们指定了参数的名称、类型和值。在这个例子中,我们使用SqlDbType.Decimal作为参数类型,并将参数值设置为5000。

最后,我们打开数据库连接,并执行查询命令。通过调用command.ExecuteReader

Akhir sekali, kami membuka sambungan pangkalan data dan melaksanakan arahan pertanyaan. Dapatkan hasil pertanyaan dengan memanggil command.ExecuteReader dan gunakan SqlDataReader untuk membaca hasil baris demi baris. Dalam gelung, kami mendapat ID dan nama setiap pekerja melalui nama lajur, dan mengeluarkannya ke konsol.


Ringkasan

Dengan menggunakan SqlParameter, kami boleh membina pertanyaan berparameter dengan berkesan, dengan itu meningkatkan keselamatan dan prestasi pertanyaan pangkalan data. Dengan menetapkan nama, jenis dan nilai parameter, kami boleh menambah parameter dengan mudah pada pernyataan SQL dan menghalang kemungkinan serangan suntikan SQL. Saya harap artikel ini akan membantu anda memahami peranan dan penggunaan SqlParameter dalam C#. 🎜

Atas ialah kandungan terperinci Pertanyaan berparameter dalam C# menggunakan SqlParameter. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk mengeksport data yang ditanya dalam navicat Bagaimana untuk mengeksport data yang ditanya dalam navicat Apr 24, 2024 am 04:15 AM

Eksport hasil pertanyaan dalam Navicat: Laksanakan pertanyaan. Klik kanan hasil pertanyaan dan pilih Eksport Data. Pilih format eksport seperti yang diperlukan: CSV: Pemisah medan ialah koma. Excel: Termasuk pengepala jadual, menggunakan format Excel. Skrip SQL: Mengandungi pernyataan SQL yang digunakan untuk mencipta semula hasil pertanyaan. Pilih pilihan eksport (seperti pengekodan, pemisah baris). Pilih lokasi eksport dan nama fail. Klik "Eksport" untuk memulakan eksport.

Bagaimana untuk menulis auto-increment dalam mysql Bagaimana untuk menulis auto-increment dalam mysql Apr 27, 2024 am 01:54 AM

Peningkatan automatik dalam MySQL ialah mekanisme yang menjana urutan nombor unik secara automatik, sering digunakan untuk kunci utama dan medan indeks unik. Untuk menetapkan kenaikan automatik, anda perlu menentukan atribut AUTO_INCREMENT semasa mencipta jadual, contohnya: CREATE TABLE my_table (id INT NOT NULL AUTO_INCREMENT, nama VARCHAR(255) NOT NULL). Kelebihan autokenaikan termasuk: memudahkan penjanaan kunci utama, meningkatkan prestasi sisipan dan memastikan keunikan. Walau bagaimanapun, medan dengan penambahan automatik didayakan tidak boleh ditetapkan kepada nilai kenaikan automatik tidak boleh diramalkan sebelum memasukkan secara manual nilai medan kenaikan automatik mungkin bercanggah dengan jujukan yang dijana secara automatik medan autokenaikan mungkin menjejaskan

Cara menggunakan explain dalam oracle Cara menggunakan explain dalam oracle May 03, 2024 am 12:06 AM

Perintah EXPLAIN dalam Oracle digunakan untuk menganalisis pelan pelaksanaan pernyataan SQL Kaedah penggunaan adalah untuk menambah kata kunci EXPLAIN sebelum pernyataan SQL. EXPLAIN keputusan mengandungi maklumat seperti ID, jenis operator, anggaran kiraan baris, anggaran kos, anggaran kiraan baris output, predikat akses dan predikat penapis, yang boleh digunakan untuk mengoptimumkan prestasi pertanyaan, mengenal pasti pengendali yang mahal dan jadual yang mungkin mendapat manfaat daripada pengoptimuman teknik.

Bagaimana untuk menanyakan maklumat dalam navicat Bagaimana untuk menanyakan maklumat dalam navicat Apr 24, 2024 am 04:06 AM

Langkah menggunakan Navicat untuk menanyakan maklumat: Wujudkan sambungan pangkalan data, buka tetingkap pertanyaan, tulis pernyataan pertanyaan, laksanakan pertanyaan dan lihat hasil pertanyaan.

Bagaimana untuk menyambung layui ke pangkalan data Bagaimana untuk menyambung layui ke pangkalan data Apr 26, 2024 am 01:51 AM

Bagaimana untuk menggunakan layui untuk menyambung ke pangkalan data? Anda boleh menyambung melalui langkah berikut: Memperkenalkan skrip layui, memperkenalkan modul pangkalan data, menulis kod sambungan, memproses hasil sambungan, menggunakan kaedah operasi pangkalan data untuk membuat pertanyaan atau mengemas kini

Cara menyambungkan jadual navicat dengan pandangan Cara menyambungkan jadual navicat dengan pandangan Apr 24, 2024 pm 07:33 PM

Menyertai jadual melalui paparan dalam Navicat membolehkan akses data dan pertanyaan yang mudah: buat paparan dan gunakan pernyataan SQL untuk menggabungkan medan yang diperlukan bersama-sama daripada jadual yang berbeza. Untuk menyambungkan paparan, seret dan lepaskan paparan yang dibuat ke dalam editor pertanyaan. Jalankan pertanyaan, masukkan pertanyaan SQL dan laksanakannya untuk melihat data yang disambungkan.

Langkah keselamatan dan perlindungan laman web PHP Langkah keselamatan dan perlindungan laman web PHP May 04, 2024 pm 10:48 PM

Langkah keselamatan tapak web PHP termasuk: Mencegah suntikan SQL: menggunakan pernyataan yang disediakan atau melarikan diri daripada input pengguna. Cegah XSS: Keluarkan input pengguna. Cegah CSRF: Gunakan token CSRF. Cegah limpahan penimbal: Tetapkan panjang input maksimum. Kekal dikemas kini, gunakan rangka kerja keselamatan, dayakan tembok api, pantau tapak web, jalankan audit keselamatan.

Bagaimanakah navicat melaksanakan keputusan pernyataan? Bagaimanakah navicat melaksanakan keputusan pernyataan? Apr 24, 2024 pm 12:39 PM

Bagaimana untuk melaksanakan pernyataan SQL dalam Navicat dan melihat hasilnya: Buka Navicat dan sambungkan ke pangkalan data. Klik pada ikon editor SQL. Masukkan pernyataan SQL. Klik butang Laksanakan. Lihat keputusan pelaksanaan dalam tab Keputusan.

See all articles