添加新数据时总是出错.错误说
字符串或二进制数据将被截断.该语句已终止
因为我回顾了我的后端或代码.看起来TWO LABEL DATA在一列中添加一个冲突是因为我想加入(年) - (StudentNumber)
这是我的INSERT INTO语句的代码
INSERT INTO
[Student_Information] (StudentID, LastName, FirstName, MiddleName, Gender,
ContactNumber, Citizenship, Religion, Birthday, Address)
VALUES
( '" & lbl_cyear.Text - studid.Text & "','" + txt_lname.Text + "', '" + txt_fname.Text + "', '" + txt_mname.Text + "', '" + DDGender.Text + "', '" & txt_cnumber.Text & "', '" & txt_citizenship.Text & "' , '" + txt_religion.Text + "' , '" & txt_bday.Text & "', '" & txt_address.Text & "' )"
Run Code Online (Sandbox Code Playgroud)
这是我如何生成年份和学生编号的代码
Sub SNYear()
Dim test As Date
test = Convert.ToDateTime(Today)
lbl_cyear.Text = test.Year
End Sub
Sub SNGenerate()
'displaying Studentid
Dim SN As Integer ' Student Number
Dim SID As String 'Student ID Num as String
Dim rdr As SqlDataReader
cmd1.Connection = cn
cmd1.Connection.Open()
cmd1.CommandText = "Select Max (StudentID) as expr1 from [Student_Information]"
rdr = cmd1.ExecuteReader
If rdr.HasRows = True Then
rdr.Read()
End If
If rdr.Item(0).ToString = Nothing Then
SN = rdr.Item(0) + 1
SID = Format(SN, "0000")
ElseIf rdr.Item(0).ToString = 0 Then
SN = rdr.Item(0) + 1
SID = Format(SN, "0000")
Else
SN = rdr.Item(0) + 1
SID = Format(SN, "0000")
End If
studid.Text = SID
cmd1.Connection.Close()
End Sub
Run Code Online (Sandbox Code Playgroud)
有人可以帮我代码吗?如何将2个数据连接到不同的标签文本中并将其保存到表格中的一列中.
哇!永远不要写那样的SQL查询.它受到危险的SQL注入,并且像这样的代码实际上被用作SQL注入讲座中的最坏情况!
话虽这么说,错误消息字符串或二进制数据将被截断.该语句已终止.实际上说明了什么是错的.您正在尝试将过多数据插入到具有特定维度的字段中.
您正尝试在StudentID字段中插入以下表达式:
lbl_cyear.Text - studid.Text
Run Code Online (Sandbox Code Playgroud)
我甚至不确定你想做什么.由于默认情况下松散地键入Visual Basic,它可能会处理lbl_cyear.Text数字并尝试从中减去studid.Text (作为数字).你可能意味着这样的事情:
lbl_cyear.Text & "-" & studid.Text
Run Code Online (Sandbox Code Playgroud)
您似乎正在尝试将该StudentID列用于两种不同类型的信息.不要那样做.确定学生ID的一种格式并为其标注列.
这是家庭作业吗?
| 归档时间: |
|
| 查看次数: |
25744 次 |
| 最近记录: |