【发布时间】:2013-10-28 18:37:07
【问题描述】:
嗨,我是 Visual Basic 的新手。我有一个按钮,当它被点击时,它会通过用户输入的 ID 找到学生,并将数据输出到文本字段。我不太确定我这样做是否正确。因为我收到了这个错误 [图片] >> http://img812.imageshack.us/img812/7650/gq0z.png
顺便说一句,到目前为止,这是我的代码。有人能帮助我吗?谢谢!
cmd.CommandText = "Select * from Student where Student_id = '" & id.Text & "'"
cmd.Connection = db
dr = cmd.ExecuteReader
Try
dr.Read()
id.Text = dr.GetValue(0)
Lname.Text = dr.GetValue(1)
Fname.Text = dr.GetValue(2)
Mname.Text = dr.GetValue(3)
datet.Text = dr.GetValue(4)
age.Text = dr.GetValue(5)
male.Text = dr.GetValue(6)
female.Text = dr.GetValue(7)
status.Text = dr.GetValue(8)
staddress.Text = dr.GetValue(9)
cityAdd.Text = dr.GetValue(10)
dr.Close()
Catch ex As Exception
MsgBox("" + ex.Message)
dr.Close()
End Try
【问题讨论】:
-
如果
id.Text为空你会得到一个错误;您还需要在构建 SQL 之前将其包含的 text 转换为数字。将来发布实际的错误消息(它们是重要信息)而不是图片链接 -
我会推荐一个:
If NOT isdbnull(dr.getvalue(0))... 对于每一个显然增加每一个的 getvalue 数。 -
不请自来的建议:继续将
dr.getvalue(n)更改为dr.getvalue("nameOfColumn")。这是一个更好的习惯。 -
谢谢!会检查的。
-
或将其更改为
dr.item("nameofcolumn")短一点...请参阅下面的答案