PDA

View Full Version : سوال: حذف ریکورد از دیتابیس



hackman
یک شنبه 15 اردیبهشت 1392, 10:42 صبح
سلام

تو دیتابیسم یه تیبل دارم که اطلاعاتو ذخیره میکنم

چه جوری میتونم یه مقدارو سرچ کنم و اونو از تیبلم پاک کنم ؟

hessam2003
یک شنبه 15 اردیبهشت 1392, 11:10 صبح
سلام.
فرم کلی دستور پاک کردن در SQL
103729

keyvan_s89
یک شنبه 15 اردیبهشت 1392, 11:26 صبح
باید یه مقدار کلیدی داشته باشید که بر اساس اون پاک کنید.

hackman
یک شنبه 15 اردیبهشت 1392, 12:43 عصر
سلام.
فرم کلی دستور پاک کردن در SQL
103729

ممنون ولی دستور delete رو c# نمیفهمه !!!
چیکار بایدکنم ؟

programerinfonet
یک شنبه 15 اردیبهشت 1392, 12:50 عصر
دوست عزیز سی شارپ نمی فهمه یعنی چی ؟؟
بانکت چیه ؟ اکسس یا اس کیو ال
در کل این نمونه کد حذف از بانک اکسس

{
OleDbCommand com = new OleDbCommand("delete from barnameh where id=(" + dataGridView1.CurrentRow.Cells[0].Value.ToString() + ")",con);
com.ExecuteNonQuery();
MessageBox.Show("عملیات حذف انجام شد", "System Info", MessageBoxButtons.OK, MessageBoxIcon.Information);
}

hackman
یک شنبه 15 اردیبهشت 1392, 12:56 عصر
دوست عزیز سی شارپ نمی فهمه یعنی چی ؟؟
بانکت چیه ؟ اکسس یا اس کیو ال
در کل این نمونه کد حذف از بانک اکسس

{
OleDbCommand com = new OleDbCommand("delete from barnameh where id=(" + dataGridView1.CurrentRow.Cells[0].Value.ToString() + ")",con);
com.ExecuteNonQuery();
MessageBox.Show("عملیات حذف انجام شد", "System Info", MessageBoxButtons.OK, MessageBoxIcon.Information);
}


بانکم sql هست
کلیاتش اینه که یه باتن دارم که میخام وقتی روش کلیک میکنم تو جدول دیتابیسم بگرد و کل ردیف مربو به رکورد مثلا examp رو پاک کنه

f.beigirad
یک شنبه 15 اردیبهشت 1392, 13:16 عصر
دوست من اول شما باید توسط یه کانکشن بهه دیتابیس وصل شی.
در مرحله بعدی باید با نوشتن و اجرای یک command کاری که میخوایو روی دیتابیس انجام بدی.

از بابته این سوالم معذرت میخوام: آیا شما چیزی درباره ado.net خوندین؟
چون توی هر کتاب آموزشی که درباره ارتباط با پایگاه داده باشه این مطالب رو نوشته.به نظرم بهتره کتاب مربوطه رو بخونید.

hackman
یک شنبه 15 اردیبهشت 1392, 13:32 عصر
دوست من اول شما باید توسط یه کانکشن بهه دیتابیس وصل شی.
در مرحله بعدی باید با نوشتن و اجرای یک command کاری که میخوایو روی دیتابیس انجام بدی.

از بابته این سوالم معذرت میخوام: آیا شما چیزی درباره ado.net خوندین؟
چون توی هر کتاب آموزشی که درباره ارتباط با پایگاه داده باشه این مطالب رو نوشته.به نظرم بهتره کتاب مربوطه رو بخونید.

ممنون از راهنماییت

یه سوال دیگه برام پیش اومد
توی برنامم هر جیی که بخام روی دیتابیس عملی انجام بدم باید کد کانکت رو بنویسم بعد کد مربوط به عملیات رو بنویسم ؟

نمیشه یه بار کد رو بنویسم و دیتابیسم همیشه کانکت باشه ؟؟؟

reza69
یک شنبه 15 اردیبهشت 1392, 14:27 عصر
ممنون از راهنماییت

یه سوال دیگه برام پیش اومد
توی برنامم هر جیی که بخام روی دیتابیس عملی انجام بدم باید کد کانکت رو بنویسم بعد کد مربوط به عملیات رو بنویسم ؟

نمیشه یه بار کد رو بنویسم و دیتابیسم همیشه کانکت باشه ؟؟؟
نه نمیشه
ولی میتونی یه بار کانکشنتو به صورت عمومی تو همون فرم بنویسی و دیگه لازم به نوشتن دوباره نیست. البته تو همون فرم کارایی داره

f.beigirad
یک شنبه 15 اردیبهشت 1392, 17:12 عصر
با سلام.

دوست من میتونی این کانکشن استرینگ رو بالای کدهای نوشته شدت بنویسی.
مثل این:
public Form2()
{
InitializeComponent();
}

SqlConnection cnn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=.\Azmoongir_D ata.MDF;Integrated Security=True;Connect Timeout=30;User Instance=True");

و هر موقع که خواستی کاری انجام بدی کانکشن رو open میکنی و بعد از انجام کارت closeمیدی.
cnn.Open();
SqlCommand cmd = new SqlCommand("SELECT * FROM Table");
cmd.Connection = cnn;
cmd.ExecuteNonQuery();
cnn.Close();

موفق باشی

erfan_urchin
یک شنبه 15 اردیبهشت 1392, 21:11 عصر
ممنون از راهنماییت

یه سوال دیگه برام پیش اومد
توی برنامم هر جیی که بخام روی دیتابیس عملی انجام بدم باید کد کانکت رو بنویسم بعد کد مربوط به عملیات رو بنویسم ؟

نمیشه یه بار کد رو بنویسم و دیتابیسم همیشه کانکت باشه ؟؟؟

دوست عزیز برای این کار شما میتونی یک بار به صورت عمومی کانکشن رو بنویسی که فقط برای همون فرمت میتونی ازش استفاده کنی
اما اگه بخوای از اون کانکشن برای بقیه فرم ها هم استفاده کنی باید از constructor استفاده کنی
یعنی به صورت زیر:
تو فرم1 کد زیر رو بنویسید
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

SqlConnection sc = new SqlConnection("Data Source=.;Initial Catalog=db1;Integrated Security=True");

private void button1_Click(object sender, EventArgs e)
{
//کد های مورد نظر
}
}
و در فرم2 یک constructor به شکل زیر درست کنید
public partial class Form2 : Form
{
SqlConnection sc;
public Form2(SqlConnection _sc)
{
sc = _sc;
InitializeComponent();
}
به این صورت میتونین از کانکشنتون تو فرم2 هم استفاده کنین و به همین ترتیب میتونین تو فرم های دیگه هم استفاده کنین. فقط یادتون باشه اگه خواستین تو فرم1 از فرم2 شی بسازین (مثلا برای نمایش آن) باید بصورت زیر بنویسین
Form2 f2 = new Form2(sc);
f2.Show();

یعنی باید اسم کانکشن رو تو پرانتز بنویسین
موفق باشی

mhdhp86
یک شنبه 15 اردیبهشت 1392, 21:43 عصر
SqlConnection con = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirecto ry|\......0;User Instance=True");
DataSet ds2 = new DataSet();
SqlDataAdapter ada2 = new SqlDataAdapter();
int state=0;
int state2 = 0;
DialogResult ans;
ans = MessageBox.Show("آیا مطمئن هستید که این عضو حذف شود؟", "هشدار", MessageBoxButtons.YesNo);
if (ans == DialogResult.No)
{
state = 0;
}
else
state = 1;

con.Open();
ada2.SelectCommand = new SqlCommand("select * from member where memberID = " + IDtxt.Text , con);

ada2.Fill(ds2);
if (ds2.Tables[0].Rows.Count < 1)
{
MessageBox.Show("این شماره عضویت وجود ندارد");
state2 = 0;

}
else
state2 = 1;

if (state == 1 && state2 ==1)
{
//SqlConnection con = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|D......ser Instance=True");
SqlCommand sc = new SqlCommand();
sc.CommandType = CommandType.Text;
sc.CommandText = "Delete from member where memberID=" + IDtxt.Text;
sc.Connection = con;
sc.ExecuteNonQuery();
con.Close();
MessageBox.Show("حذف شد.");
}

}

hackman
سه شنبه 17 اردیبهشت 1392, 14:41 عصر
ممنون دوست عزیز

یه سوال فنی داشتم
من یه برنامه ی پارکینگ دارم مینویسم که ورود و خروج خودرو ها ثبت میکنه
دیتابیسمو توی سی شارپ از مسیر زیر ساختم
add> new Item > service-based datebase
داخل sql server هم دیتا بیسمو ادد کردم و یه لاگین براش ساختم :
user : myname
pass : 1234
کانکشن استرینگمو ب این شکل نوشتم :
string sip = serverIP.Text;
string cnnstr = " Data Source=" + sip + ",1433 ;Initial Catalog= TESTDB ;Persist Security Info=True ; user id = myname ; password = 1234 ";
SqlConnection connection = new SqlConnection(cnnstr);
connection.Open();

به این صورت عمل میکنه که آی پی سرور داخل یه تکست باکس وارد میشه و باتن کانکت زده میشه
حالا مشکل اینجاس که وقتی این عملیات انجام میشه این ارور ظاهر میشه و کار نمیکنه :

hackman
سه شنبه 17 اردیبهشت 1392, 14:44 عصر
اینم ارورش :
login failed for user 'myname'