更新数据表时,字符串或二进制数据将被截断

时间:2014-07-21 19:07:29

标签: sql-server vb.net

我正在尝试更新客户信息。我使用此代码加载5个字段:

  cust_cn.Open()
    Dim cust_da As New SqlDataAdapter("SELECT * FROM [customers] where [custID]=" & txtCustPhone.Text, cust_cn)

    cust_da.Fill(cust_datatable)

    txtCustPhone.Text = cust_datatable.Rows(0).Item("custID")
    txtCustFirstName.Text = cust_datatable.Rows(0).Item("first")
    txtCustLastName.Text = cust_datatable.Rows(0).Item("last")
    txtCustAddress.Text = cust_datatable.Rows(0).Item("address")
    txtCustZip.Text = cust_datatable.Rows(0).Item("zip")

这很好用。当我尝试修改其中一个字段时(更改现有客户的邮政编码) 使用此代码:

  If cust_datatable.Rows.Count <> 0 Then
        cust_datatable.Rows(0).Item("custID") = txtCustPhone.Text
        cust_datatable.Rows(0).Item("first") = txtCustFirstName.Text
        cust_datatable.Rows(0).Item("last") = txtCustLastName
        cust_datatable.Rows(0).Item("address") = txtCustAddress.Text
        cust_datatable.Rows(0).Item("zip") = txtCustZip.Text
        'cust_datatable.Rows(custrecord)("custID") = txtCustPhone.Text
        'cust_datatable.Rows(custrecord)("first") = txtCustFirstName.Text
        'cust_datatable.Rows(custrecord)("last") = txtCustLastName.Text
        'cust_datatable.Rows(custrecord)("address") = txtCustAddress.Text
        'cust_datatable.Rows(custrecord)("zip") = txtCustZip.Text

        cust_DA.Update(cust_datatable)
    End If

我收到错误:“字符串或二进制数据会被截断” 我最初尝试使用注释部分进行更新,但它只修改了数据库中的第一条记录。 有什么想法吗?

0 个答案:

没有答案