PDA

View Full Version : insertدر بانک؟



نیما حتمی
سه شنبه 17 اسفند 1389, 15:34 عصر
با سلام

چطور می شود با یک دستور insert در دو جدول تعدادی فیلد را وارد کنیم؟

Reza_Yarahmadi
سه شنبه 17 اسفند 1389, 17:21 عصر
با یک دستور نمیشه همزمان در 2 جدول ذخیره کرد حتی با یک دستور نمیشه توی یک جدول 2 رکورد ذخیره کرد.
ولی میشه توی یک Transaction این 2 کار رو انجام داد.
به روشهای زیر:
Begin Tran A
Begin Try
Insert Into Table1 values(...)
Insert Into Table2 values(...)
Commit Tran A
End Try
Begin Catch
Rollback tran A
End Catch
در ضمن میشه تریگری روی جدول اول نوشت که بعد از اضافه شدن اطلاعات به جدول اول ، داده هایی به جدول دوم اضافه بشه. (ولی این کار چندان توصیه نمیشه).

marziehm869
جمعه 12 خرداد 1391, 19:34 عصر
سلام
دستور INSERT من تاپلی وارد نمیکنه!!نمیدونم چرا!!کجاش مشکل داره به نظرتون!!
private void button1_Click(object sender, EventArgs e)
{

// SqlDataAdapter.DefaultSourceTableName.All()="insert into CUSTOMER(custno,custname,coustfamily,tel) Value(1,"+textBox1.Text+","+textBox2.Text+","+maskedTextBox1.Text+")";
// prepare command string


string insert = "INSERT INTO CUSTOMER([custno],[custname],[coustfamily],[tel]) VALUES(23,SAHAR,MOLODY,213423423)";
SqlCommand cmd = new SqlCommand (insert, conn);
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
showdata();

marziehm869
جمعه 12 خرداد 1391, 19:35 عصر
اصلا کل برناممو میشکنه میاد بیرون.انه ارورش:

An unhandled exception of type 'System.Data.SqlClient.SqlException' occurred in System.Data.dll

Additional information: Invalid column name 'SAHAR'.
Invalid column name 'MOLODY'.

Mahmoud.Afrad
جمعه 12 خرداد 1391, 22:28 عصر
مقادیر رشته ای باید بین تک کوتیشن قرار بگیرند. 'SAHAR' 'MOLODY'

Arash_janusV3
شنبه 13 خرداد 1391, 02:26 صبح
درود
شما با دو دستور این کار را انجام بدید مدیریت بهتری دارید
و یا در trigger انجام بدهید
موفق باشید

hosseinenayati_2009
شنبه 13 خرداد 1391, 17:46 عصر
سلام
دستور INSERT من تاپلی وارد نمیکنه!!نمیدونم چرا!!کجاش مشکل داره به نظرتون!!
private void button1_Click(object sender, EventArgs e)
{

// SqlDataAdapter.DefaultSourceTableName.All()="insert into CUSTOMER(custno,custname,coustfamily,tel) Value(1,"+textBox1.Text+","+textBox2.Text+","+maskedTextBox1.Text+")";
// prepare command string


string insert = "INSERT INTO CUSTOMER([custno],[custname],[coustfamily],[tel]) VALUES(23,SAHAR,MOLODY,213423423)";
SqlCommand cmd = new SqlCommand (insert, conn);
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
showdata();

سلام شما توی دستور insert نوشتید Value در صورتی که باید بنویسید values .اینجوری مشکلتون حل میشه در ضمن مقادیر رشته ای باید بین تک کوتیشن قرار بگیرند که درست جواب بدند.