【发布时间】:2013-01-07 00:18:56
【问题描述】:
我对需要在 datagridview 上查看的数据有疑问。下面是我的代码:
Public Class Form3
Private Sub Form3_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim CONNECT_STRING As String = (...)
Dim cnn As New OleDbConnection(CONNECT_STRING)
cnn.Open()
MsgBox(status_narocila.value)
Dim sql As String = "SELECT artikel.st_artikla, artikel.naziv_artikla, narocilo.kolicina, narocilo.barva_tiska, narocilo.izvedba, narocilo.opombe, narocilo.datum_narocila, narocilo.rok_izdelave, narocilo.status, narocilo.ID FROM (narocilo INNER JOIN artikel ON narocilo.id_artkla = artikel.ID) WHERE(narocilo.ID = '" & status_narocila.value & "')"
Dim cmd As New OleDbCommand(sql, cnn)
Dim da As New OleDbDataAdapter(cmd)
Dim ds As New DataSet
da.Fill(ds, "artikel")
cnn.Close()
DataGridView1.DataSource = ds.Tables("artikel")
End Sub
End Class
值status.narocila.value 是整数,我已经对其进行了测试并从中获得了正确的值。没有WHERE 子句,代码运行良好。
【问题讨论】:
-
尝试
.ToString()→status_narocila.value.ToString() -
不应该需要空格 WHERE( 到 WHERE (。我更倾向于相信你不需要 ' 如果 ID 是数字数据类型。那么 narocilo 的数据类型是什么.ID?
-
narocilo.ID 字段的数据库类型是什么?
-
你测试过,并在sql字符串后面放了断点。并在 SQL Server Management Studio 中运行
标签: sql winforms datagridview