Mengambil Data daripada Pangkalan Data Pelayan SQL dalam C#
Untuk mendapatkan semula data daripada pangkalan data Pelayan SQL dalam C#, anda boleh menggunakan SqlConnection, SqlCommand, dan objek SqlDataReader. Begini cara anda boleh mencapainya:
Mewujudkan Sambungan ke Pangkalan Data:
SqlConnection con = new SqlConnection("Data Source=. Initial Catalog=domain; Integrated Security=True"); con.Open();
Buat SqlCommand Objek:
SqlCommand cmd = new SqlCommand("Select * from tablename", con);
Laksanakan SqlCommand:
using (SqlDataReader reader = cmd.ExecuteReader()) { // Iterate over the results and retrieve values while (reader.Read()) { // Get values from the current row } }
Walau bagaimanapun, kod yang anda dengan syarat dalam soalan anda tidak berfungsi kerana anda tidak meparameterkan pertanyaan SQL anda. Ini menjadikan kod anda terdedah kepada serangan suntikan SQL. Untuk membetulkannya, gunakan pertanyaan berparameter:
cmd.CommandText = "select * from tablename where firstname = @firstName"; cmd.Parameters.AddWithValue("@firstName", textBox1.Text);
Berikut ialah contoh kaedah yang lebih lengkap yang mendapatkan semula data daripada pangkalan data dan mengisi objek yang ditentukan pengguna:
public Person GetPerson(string firstName) { var con = ConfigurationManager.ConnectionStrings["Yourconnection"].ToString(); using (SqlConnection myConnection = new SqlConnection(con)) { string oString = "Select * from Employees where FirstName=@fName"; SqlCommand oCmd = new SqlCommand(oString, myConnection); oCmd.Parameters.AddWithValue("@Fname", fName); myConnection.Open(); using (SqlDataReader oReader = oCmd.ExecuteReader()) { while (oReader.Read()) { Person matchingPerson = new Person { firstName = oReader["FirstName"].ToString(), lastName = oReader["LastName"].ToString(), }; return matchingPerson; } } } return null; // If no person found }
Untuk menggunakan ini kaedah, anda boleh memanggilnya dengan parameter FirstName dan mengisi kotak teks anda dengan sifat objek Orang yang dikembalikan.
Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Data daripada Pangkalan Data Pelayan SQL dalam C# Menggunakan Pertanyaan Parameter?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!