我正在尝试使用where子句从数据库中显示名为 staffpresentee 的表中的记录...
我正在使用visual studio 2010 ...
表格设计如下 -
.......fieldname..................datatype........allownull
1......staff_id (fk).............numeric(18,0)......yes
2.......date........................date.............no
3......present.....................char(1)..........yes
请注意,第二个字段的类型是日期而不是日期时间......
我想显示表中所有日期在'date'字段中的所有记录... 我目前的查询是 -
cmd = New SqlClient.SqlCommand("select * from staffpresentee where date=" & Date.Now.Date, cn)
dr = cmd.ExecuteReader
dr = cmd.ExecuteReader
我收到错误
“操作数类型冲突:日期与int”
不兼容
我尝试了select * from staffpresentee
查询,但没有正确运行的where子句。
答案 0 :(得分:1)
尝试将日期值放在单引号中。
cmd = New SqlClient.SqlCommand("select * from staffpresentee where date='" & _
Date.Now.Date & "'", cn)
dr = cmd.ExecuteReader
答案 1 :(得分:0)
试试这个 -
cmd = New SqlClient.SqlCommand("select * from staffpresentee where [date]=@dt", cn)
cmd.Parameters.AddWithValue("@dt", DateTime.Now.Date)
dr = cmd.ExecuteReader