0
我一直在這個問題一個星期,搜索每個現有的論壇的答案也許這次我發佈我自己的問題。INSERT INTO語句中的語法錯誤。在VB.net 2005
我的問題是保存數據庫中的數據。我想將數據保存到訪問數據庫,以瞭解客戶的圖片和數據。
看來我的問題是在INSERT INTO語句中,因爲每次我嘗試從文本框中保存數據時都會出現msgbox。最後,我是vb.net的新手。 請幫助我。 我的編碼如下。
Dim ms As New IO.MemoryStream
Me.PictureBox1.Image.Save(ms, Me.PictureBox1.Image.RawFormat)
Dim arrayImage() As Byte = ms.GetBuffer
ms.Close()
fdCon.ConnectionString = strConnectionString
sql = "INSERT INTO TBL_CUSTOMER([id_card],[cus_fname],[cus_lname],[age],[bd_date],[address],[phone],[e_mail],[date_reg],[MATE],[PIC])VALUES (@txtID,@txtFname,@txtLname,@txtAge,@bdDate,@txtAdd,@txtPhone,@txtEmail,@dmDateIN,@txtMate,@Picture"
'Set SQL OBJECT
objSql = New OleDbCommand(sql, fdCon)
Try
fdCon.Open()
With objSql
.Parameters.Add(New OleDbParameter("@Picture", SqlDbType.Image)).Value = arrayImage
.Parameters.AddWithValue("@txtID", txtID.Text)
.Parameters.AddWithValue("@txtFname", txtFname.Text)
.Parameters.AddWithValue("@txtLname", txtLname.Text)
.Parameters.AddWithValue("@txtAge", txtAge.Text)
.Parameters.AddWithValue("@bdDate", bdDate.Text)
.Parameters.AddWithValue("@txtAdd", txtAdd.Text)
.Parameters.AddWithValue("@txtPhone", txtPhone.Text)
.Parameters.AddWithValue("@txtEmail", txtEmail.Text)
.Parameters.AddWithValue("@dmDateIN", dmDateIN)
.Parameters.AddWithValue("@txtMate", txtMate.Text)
End With
'Execute DataReader
MyDataReader = objSql.ExecuteNonQuery
'Store Values in String Variables
'Close Connection
Catch ex As Exception
'TODO HANDLE EX
MessageBox.Show(ex.Message)
End Try
'DataGridView1.DataSource =
fdCon.Close()
當我填寫結束時)值部分。我有錯誤「字段太小,無法接受您嘗試添加的數據量,請嘗試插入或粘貼更少的數據。」如何解決它。 – user3418046
您是否嘗試將鼠標懸停在變量上以查看它有什麼? – OneFineDay
我試圖找到參數,但沒有異常。每個參數都必須顯示字符串。 – user3418046