PDA

View Full Version : سوال: چطوری Insert و Select همزمان استفاده می شه



dibairani
یک شنبه 08 آبان 1390, 16:56 عصر
سلام

من دارم یه برنامه می نویسم
توی فرم ثبت اطلاعات کاربر اطلاعات رو با استفاده از دستور Insert In To به دیتابیس می فرستم
اما چون ID رو از نوع Identity تعریف کردم می خوام بعد از ثبت و ارسال پارامتر ها به دیتا بیس
شماره ID رو توی یه Textbox یا Messagebox نشون بده

یعنی می شه همزمان در رویداد کلیک دکمه ثبت از دستور Select و Insert استفاده کرد

یه نمونه کد واسم بذارید خواش می کنم بد جوری گیر کردم فوریه

ممنون

sobaisobai
یک شنبه 08 آبان 1390, 16:58 عصر
سلام
میتونی وقتی Insert کردی بعدش Select کنی

dibairani
یک شنبه 08 آبان 1390, 17:02 عصر
سلام
میتونی وقتی Insert کردی بعدش Select کنی

یعنی چطوری
اینو ببین من اینطوری نوشتم
string strcom = "insert into Usertable(Name,Family) values ('" + textBox1.Text + "','" + textBox2.Text + "')";
SqlConnection con = new SqlConnection("data source=NI\\NI; initial catalog=school;integrated security=true");
SqlCommand com = new SqlCommand(strcom, con);
SqlDataAdapter da = new SqlDataAdapter(com);
DataSet ds = new DataSet();
da.Fill(ds, "Usertable");



حالا چطوری select کنم کجاش

sobaisobai
یک شنبه 08 آبان 1390, 17:11 عصر
بعد با استفاده از کد زیر Select کن
string strcom = "select id from Usertable where id='" + txtid.Text + "' ";
SqlConnection con = new SqlConnection("data source=NI\\NI; initial catalog=school;integrated security=true");
SqlCommand com = new SqlCommand(strcom, con);
SqlDataReader reader;
reader = com.ExecuteReader();
if (reader.Read())
{
textBox1.Text = reader["id"].ToString();
}
فقط مقدار id تو دستور Select تو قسمت Where رو خودت تغییر بده

dibairani
یک شنبه 08 آبان 1390, 17:30 عصر
اینو ببین ماله چیه
من فیلد ID رو دارم از نوع int و Identity

77239

sobaisobai
یک شنبه 08 آبان 1390, 17:34 عصر
اسمی که گذاشتی باید هم نام فیل جدولت باشه
میتونی ایندکسشو بذاری مثل کد زیر
textBox1.Text = reader[0].ToString();
تست کن

com_engineer_ab
یک شنبه 08 آبان 1390, 17:45 عصر
شما بعد از ثبت داده ها توی جدول فقط لازم دستور select رو با مرتب سازی معکوس انجام بدی در اینصورت آخرین فیلد اضافه شده اولین فیلد دیتاست هست کد زیر رو ببیبن

SELECT id
FROM Usertable
ORDER BY id DESC

برا این کار هم فقط لازم اولین فیلد دیتاست رو بریزی توی textbox


textBox1.Text=ds.Tables[0].Rows[0][0].ToString();

mg_mahyar
یک شنبه 08 آبان 1390, 22:08 عصر
اصلا دستور رو اینجوری استفاده نکن. استور پراسیجر بنویس اونو صدا کن.