2014-03-14 71 views
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() 

回答

1

您没有结束)值部分。

Dim arrayImage() As Byte 
Using ms As New IO.MemoryStream 
    Me.PictureBox1.Image.Save(ms, Me.PictureBox1.Image.RawFormat) 
    arrayImage = ms.ToArray() 
End Using 

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)" 

看看这个article

+0

当我填写结束时)值部分。我有错误“字段太小,无法接受您尝试添加的数据量,请尝试插入或粘贴更少的数据。”如何解决它。 – user3418046

+0

您是否尝试将鼠标悬停在变量上以查看它有什么? – OneFineDay

+0

我试图找到参数,但没有异常。每个参数都必须显示字符串。 – user3418046

相关问题