ASP+SQL SERVER 的一个查询语句,不知道哪错了?

来源:百度知道 编辑:UC知道 时间:2024/09/28 09:35:45
sql="select * from [tb] where dat= #"&tim&"# "

老提示有语法错误,我是个初学者,请教各位了:( 谢谢

sql="select * from [tb] where dat='"&tim&"'"

一楼是正确的!这很显然,在SQL中如果是日期要用#来做为定界符的!在ASP中不论你用的是VB还是C#都要改写为定符型的表示,不需要再加#的定界符的!所以你这一句如果在SQL查询器中是正常的,但用到ASP/ASP。NET中是不能够正常使用的!

还有一个问题是,如果在VB中也可以直接使用表名而不必加中括号的!但中括号加上也不会出错,这是正规的用法。如:
sql="select * from tb where dat='"&tim&"'"

但如果是下面的情况是一定要加的!
sql="select * from [" & tablename &"] where ......"
这种情况是非加不可!

sql="select * from [tb] where dat='"&tim&"'"

sql="select * from [tb] where dat= "&tim&""

sql="select * from [tb] where dat= '#"& tim &"#' "

sql="select * from [tb] where dat='"&tim&"'

sql="select * from [tb] where dat= #"&tim&"# " 这是access的语法
sql server应该这样
sql="select * from [tb] where dat= '" & tim & "'"