حذف كردن اطلاعات دقيقاً مشابه درج كردن اطلاعات در جدول هستش.
تنها تفاوتي كه وجود داره در دستور SQL هستش كه درونش يه شرط قرار ميگيره و اون شرط مقدارش از يه parameter گرفته ميشه. اين مقدار گرفتن متفاوت هستش. مي تونه يه كد باشه كه درون يه TextBox هستش. مي تونه يه ID باشه كه مثلاً وقتي كاربر رويه يه ركورد از DataGridview كليك كرد برگشت داده بشه و ...
به هر حال من ساده ترينش رو مثال مي زنم و در مرحله بعد به نحو ديگري اين Parameter رو مقدار دهي مي كنيم.
ميام دو تا Refrence براي sqlConnection و sqlCommand و يه ArrayList مي سازم:
در #C:
SqlConnection cnn = newSqlConnection();
SqlCommand cmd = newSqlCommand();
ArrayList arr = newArrayList();
در VB.NET:
Dim cnn AsNew SqlConnection()
Dim cmd AsNew SqlCommand()
Dim arr AsNew ArrayList()
حالا تويه دكمه Button براي مقداردهي ArrayList مي نويسم:
در #C:
arr.Add(textBox1.Text);
در VB.NET:
arr.Add(textBox1.Text)
حالا در ادامه دستور بالا درون Button دستور SQL رو مشخص مي كنيم:
در #C:
cmd.CommandText = "Delete from Table Where ID= @ID)";
در VB.NET:
cmd.CommandText = "Delete from Table Where ID= @ID)"
بعد Parameter رو مقدار دهي مي كنم:
در #C:
cmd.Parameters.Clear();
cmd.Parameters.Add("@ID", SqlDbType.Int).Value =int.Parse ( arr[0].ToString());
در VB.NET:
cmd.Parameters.Clear()
cmd.Parameters.Add("@ID", SqlDbType.Int).Value =int.Parse ( arr[0].ToString())
حالا بايد اين cmd رو براي يه روال يا متدي كه براي Delete قراره بسازم بفرستم. اما قبل از ارسال بايد اون رو بسازم. اين روال يا متد اين كار رو انجام مي ده:- اتصال به پايگاه داده
- مشخص كردن آدرس پايگاه داده جهت اجرا دستور SQL
- باز كردن پايگاه داده
- اجراي دستور SQL
- بستن پايگاه داده
در #C:
privatevoid Delete(SqlCommand cmd)
{
Connect();
cmd.Connection = cnn;
cnn.Open();
cmd.ExecuteNonQuery();
cnn.Close();
}
در VB.NET:
PrivateSub Delete(ByVal cmd As SqlCommand)
Connect()
cmd.Connection = cnn
cnn.Open()
cmd.ExecuteNonQuery()
cnn.Close()
EndSub
حالا كه متد رو ساختم دوباره بر ميگردم به Button و اين دستور رو به خط آخرش اضافه مي كنم:
در #C:
Delete(cmd);
در VB.NET:
Delete(cmd);
حالا براي اينكه متوجه بشم كه اين ركورد حذف شده ميام LoadAll رو كه در پست هاي قبلي نوشتيم رو بهش اضافه مي كنم:
در #C:
LoadAll();
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "Barnamenevis";
در VB.NET:
LoadAll()
dataGridView1.DataSource = ds
dataGridView1.DataMember = "Barnamenevis"