در جلسه گذشته یاد گرفتید که چگونه می توانید در سی شارپ با sql server ارتباط برقرار کنید و دستورات مهم آن را وارد کنید در این جلسه هم می خواهیم با یکی از این دستورات که Delete نام دارد آشنا شویم.
Delete چیست
دستور delete برای حذف یک رکورد در دیتابیس کاربرد دارد و استفاده از آن در sql server بسیار آسان است. خوب برای شروع کار ابتدا دیتابیس مورد نظر خود را آماده کنید و سپس مراحل زیر را با دقت انجام دهید.
به پروژه خود یک دیتاگرید ویو اضافه کنید و در رخداد FormLoad مربوط دیتاگرید ویو کدهای زیر را قرار دهید. این کار برای آن است که موقع لود شدن این صفحه اطلاعات دیتابیس در دیتاگرید ویو نمایش داده شود.
ما برای شروع کار به کلاس های sql server نیازمندیم و برای دسترسی به این کلاس ها باید در فضای NameSpace آن کلاس ها را با دستور زیر فراخوانی کنیم.
using System.Data.SqlClient; |
حال در رویداد FormLoad ارجاع کرده و دستورات زیر را با دقت بنویسید.
SqlConnection conn=newSqlConnection("Data Source=localhost;Initial Catalog=db_user;Integrated Security=True"); conn.Open(); stringquery="SELECT * FROM [User]"; SqlCommand cmd=newSqlCommand(query,conn); SqlDataAdapter sda=newSqlDataAdapter(cmd); DataTable dt=newDataTable(); sda.Fill(dt); cmd.ExecuteScalar(); conn.Close(); dataGridView1.DataSource=dt; |
اگر دستورات را بصورت صحیح وارد کنید پس از اجرای پروژه خروجی زیر را خواهید داشت.
همانطوری که در تصویر ملاحظه می کنید یک باتون به پروژه اضافه شده است. شما هم همین کار را انجام دهید. چون می خواهیم یک مورد را از دیتاگرید ویو انتخاب کرده و آن را با کلیک کردن روی این دکمه حذف کنیم.
چگونه؟
بسیار راحت در رویداد کلیک این دکمه کافی است کد زیر را قرار دهید. ما برای حذف یک رکورد از دیتابیس نیاز به یک Id داریم که باید آی دی آن را بدست بیاوریم، آی دی ما در دیتاگرید ویو نمایش داده شده است. و ما باید آن به دیتابیس پاس دهیم و ببینیم که این آی دی به چه کسی تعلق دارد، سپس اقدام به حذف آن رکورد کنیم.
if(dataGridView1.CurrentRow!=null) { intid=int.Parse(dataGridView1.CurrentRow.Cells[0].Value.ToString()); SqlConnection conn=newSqlConnection("Data Source=localhost;Initial Catalog=db_user;Integrated Security=True"); conn.Open(); stringquery="DELETE [User] WHERE UserId=@userid"; SqlCommand cmd=newSqlCommand(query,conn); cmd.Parameters.AddWithValue("@userid",id); cmd.ExecuteNonQuery(); conn.Close(); } |
پس از اجرای پروژه و انتخاب سطر مورد نظر و کلیک روی دکمه حذف خروجی بصورت زیر شده است.
در ادامه می توانید سورس پروژه را به همراه پایگاه داده دانلود کنید اگر سوالی یا ابهامی برایتان پیش آمد در بخش نظرات می توانید اعلام کنید.