PDA

View Full Version : مشکل در ادد کردن در دیتابیس



tstsst
سه شنبه 18 بهمن 1390, 18:52 عصر
سلام..

در مورد اتصال و خوندن از دیتابیس مشکلی نداره ولی وقتی کلید رو فشار می دم که سه تکسباکس رو ذخیره کنه خطا ضمیمه رو میده!!

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
Dim CmdUpdate As New OleDbCommandBuilder(ol_da)
ol_da.Fill(ds, "Skydb")
Dim rowInsert As System.Data.DataRow = ds.Tables("Skydb").NewRow
rowInsert("Address") = TextBox1.Text
rowInsert("IP") = TextBox2.Text
rowInsert("Size") = TextBox3.Text
ds.Tables("Skydb").Rows.Add(rowInsert)
ol_da.Update(ds, "Skydb")
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub

mazoolagh
سه شنبه 18 بهمن 1390, 20:57 عصر
البته این پرسش رو باید در بخش vb.net مطرح کنین ولی به هر حال:

مشخص نکردین که خطا روی کدوم خط ظاهر میشه؟
dataadapter تون رو کجا تعریف کردین؟ چون اینجا نمیبینم که ol_da رو تعریف کرده باشین.
اگر public هست و قبلا تعریف شده چک کنین که کانکشن باز باشه

tstsst
سه شنبه 18 بهمن 1390, 21:19 عصر
تو یک مودل!
بله بازه
این خطا میده!
ol_da.Update(ds, "Skydb")

mazoolagh
پنج شنبه 20 بهمن 1390, 19:14 عصر
این کد که شما استفاده کردین یک روش استاندارد هست و اشکالی در کد نباید باشه - البته اگر بخش تعریف و باز کردن کانکشن و دیتاآدپتر و دستور select رو درست انجام داده باشین که کدش اینجا نیست!

چیزی که فعلا به ذهنم میرسه اون فیلد size هست که فکر کنم جزو کلمات رزرو شده است. عوضش کنین مثلا بگذارین XSIZE .
حالا کد پایین رو تست کنین ببینین خطا میده یا نه.
DIM CONN AS OLEDBCONNECTION = NEW OLEDBCONNECTION("...")
DIM DA AS NEW OLEDBDATAADAPTER
CONN.OPEN()
DA.INSERTCOMMAND = NEW OLEDBCOMMAND("INSERT INTO SKYDB (ADDRESS,IP,XSIZE) VALUES('AAA','BBB','CCC')", CONN)
DA.INSERTCOMMAND.EXECUTENONQUERY()
CONN.CLOSE()
DA.DISPOSE()

tstsst
پنج شنبه 20 بهمن 1390, 20:31 عصر
متشکر مشکل حل شد