【发布时间】:2014-05-11 22:03:09
【问题描述】:
我正在尝试简单地连接到数据库。但是问题出现在 Sql 查询的串联部分。
当我这样做时:
cmd = New OleDbCommand("Select max(ID) from Table1", con)
没有错误,但是当我这样做时
cmd = New OleDbCommand("Select max(ID) from'" & tablename & "'", con)
vb.net 出现错误:查询语法错误。查询子句不完整。
这是完整的代码
Function Get_Max(ByVal Get_Table_Name As String)
Dim tablename As String = Get_Table_Name
Dim found_max As Integer
Call connect()
con.Open()
cmd = New OleDbCommand("Select max(ID) from'" & tablename & "'", con)
dr = cmd.ExecuteReader
While dr.Read
found_max = dr(0)
End While
con.Close()
MsgBox(found_max)
Return found_max
End Function
【问题讨论】:
-
当我调试变量表名时,里面有字符串“Table1”,但连接肯定有问题
-
连接时不要引用表名,如果必须,请在表名周围使用方括号。 Max(ID) 非常不安全。
-
我只是在学习。在此之后,我将切换到 Paramatized 并重试。谢谢大家
-
好吧,好意,但您不能参数化表或字段的名称
标签: sql vb.net concatenation comma