经典ASP选择*其中x和x
问题描述:
我想知道如何正确编码下面的strSQL行来返回正确的结果。经典ASP选择*其中x和x
SELECT * FROM Reviews WHERE Month=x AND Year=x
我会在月份和年份硬编码。
我正在使用访问数据库运行一个asp页面。我尝试了上面的字符串(使用硬编码的月份和年份),但没有奏效。
服务器日志页面已关闭,所以我不能检查它的方式,即使我的浏览器设置为显示完整的错误消息,我看到的全部是500 - 内部服务器错误。
我检查了匹配月份和年份编码的记录表,并且2012年3月有相当多的记录,所以它应该显示几个结果。
月份和年份字段是用户手动输入的数据库中的单独字段。
<%
Set adoCon = Server.CreateObject("ADODB.connection")' initialize connection
Set ors = Server.CreateObject("ADODB.RecordSet")' initialize record set
adoCon.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("database.mdb")
Const COLUMN_COUNT = 1
strSQL = "SELECT * FROM Reviews WHERE Month= 'March' AND Year= '2012'"
coll_width=100/COLUMN_COUNT
column = 0 ' initialize counter
ors.open strSQL,adoCon,1,1 'open record set
Do While Not ors.EOF
If column = 0 Then Response.Write "<TR>"
%>
<td width="<%=coll_width%>%" valign="top" ><table width="100%" border="0">
<tr >
<td height="100%">
<div class="extra_container post reviews">
<figure> <img src="images/<% = oRs.Fields("Image") %>" width="200" alt=""> </figure>
<div>
<div class="date">
<% = oRs.Fields("ReleaseDate") %>
</div>
<div class="title">
<% = oRs.Fields("Artist") %> - <% = oRs.Fields("Album") %>
</div>
<% = oRs.Fields("Teaser") %>
<br>
<a href="cdreviewsmain.asp?pl=<% = oRs.Fields("ID") %>" class="button">more</a> </div>
</div>
</td>
</tr>
</table>
</td>
<% column = column + 1
If column = COLUMN_COUNT Then
Response.Write "</TR>" & vbNewLine
column = 0 ' start over!
End If
oRS.MoveNext
Loop %>
<% ors.Close 'Close the database connection
'SET ors = Nothing 'Clean up after yourself
%>
</table>
我有一些其他问题,但我会让他们排序一个一个!
感谢您可以提供任何帮助,
伊恩
答
月,年的保留在SQL的话...尝试用[]
SELECT * FROM Reviews WHERE [Month]=x AND [Year]=x
如果'他们逃跑x'是数字,那么就把数字,如果他们是字符串,然后把它们放在引号中。在Access中使用SQL Server中的双引号和单引号。
顺便说一句,如果你安装了MS Access,你可以使用查询/查看标签来建立一个标准,然后查看相应的SQL代码来获得提示。
+0
感谢信号,它排序! – 2013-04-26 16:52:33
答
至于我记得你有喜欢访问使用日期时使用的哈希:
“SELECT * FROM表名WHERE([年] =#” & varDate &“#”
“它没有工作'不给我们太多的继续,什么是确切的错误信息?同样,你可以发布_relevant_ asp代码? – 2013-04-26 16:28:52