Bagaimana cara mengambil data dari database SQL Server di C#?
Saya memiliki tabel database dengan 3 kolom nama depan
, nama belakang
dan usia
. Dalam aplikasi Windows C # saya, saya memiliki 3 kotak teks yang disebut textbox1
... Saya membuat konektivitas saya ke SQL Server saya menggunakan kode ini:
SqlConnection con = new SqlConnection("Data Source = .;
Initial Catalog = domain;
Integrated Security = True");
con.Open();
SqlCommand cmd = new SqlCommand("Select * from tablename", con);
Saya ingin mendapatkan nilai dari database saya; jika saya memberikan nilai di textbox1
itu harus sesuai dengan nilai dalam database dan mengambil rincian lainnya ke kotak teks yang sesuai.
Saya mencoba metode ini tetapi tidak berhasil:
cmd.CommandText = "select * from tablename where firstname = '" + textBox1.Text + "' ";
Bagaimana saya bisa melakukannya untuk mengambil semua nilai lain ke kotak teks?
33
3
Beberapa hal yang perlu diperhatikan di sini: Saya menggunakan kueri parametrisasi, yang membuat kode Anda lebih aman. Cara Anda membuat pernyataan pilih dengan bagian
"where x = "+ Textbox.Text +"""
membuka Anda untuk injeksi SQL.Saya telah mengubahnya menjadi:
Jadi apa yang akan dilakukan blok kode ini adalah:
Eksekusi pernyataan SQL terhadap database Anda, untuk melihat apakah ada nama depan yang cocok dengan yang Anda berikan. Jika ada, orang tersebut akan disimpan dalam objek Person (lihat di bawah ini dalam jawaban saya untuk kelasnya). Jika tidak ada kecocokan, properti dari objek Person akan menjadi
null
.Jelas saya tidak tahu persis apa yang anda coba lakukan, jadi ada beberapa hal yang perlu diperhatikan: Ketika ada lebih dari 1 orang dengan nama yang cocok, hanya yang terakhir yang akan disimpan dan dikembalikan kepada Anda. Jika anda ingin dapat menyimpan data ini, anda dapat menambahkannya ke dalam
List
.Person untuk membuatnya lebih bersih:
Sekarang untuk memanggil metode:
Anda kemudian dapat mengisi kotak teks Anda dengan nilai-nilai yang berasal dari objek Person seperti ini:
buat kelas yang disebut DbManager:
kemudian klik dua kali tombol retrieve (misal btnretrieve) pada form Anda dan masukkan kode berikut:
Untuk mengambil data dari database: