我已经设置了一个SQL数据库,我想使用vbscript从中读取它。
以下是我尝试使用的代码。
SQL_Command_String = "SELECT * FROM Table1 JOIN Table2 WHERE Table1.ID = '5' AND Table2.Date LIKE '2011'"
Set Rs = SQLConnection.Execute(SQL_Command_String)
DO WHILE NOT Rs.EOF
file1="./seminars/"&seminar_type&"/"&seminar_year&"/"&Rs("date")&"-"&Rs("year")&"_"&Rs("last")&".pdf"
seminar_year和seminar_type是我已初始化并声明为seminar_year = 2011和seminar_type = section1的常量。
我相信我的SQL_Command_String搞乱了LIKE语句。我不确定它是否正确使用。我只是想让它在日期中找到包含2011的单元格,但我不确定是否应该在日期的月份和日期部分中包含通配符,如果有的话是什么通配符?
当我注释掉Rs的声明(Set)时,页面加载正常(除了它没有填写表格)。包含时显示的错误是 “处理URL时服务器上发生错误。请与系统管理员联系。 如果您是系统管理员,请单击此处以了解有关此错误的更多信息。 “
这里只是带你到一个关于运行我已经考虑过的IIS 7的微软页面。
我真的难以理解这一点我的想法是我的SQL命令不正确,新框架出现了冲突,或者我没有正确宣告读者或者我没有使用正确的读者类型。
我很感激SO社区的任何见解。谢谢,请知道我是VBscripts的新手
答案 0 :(得分:2)
尝试删除AND Table2.Date LIKE '2011'
部分并查看其是否有效。我猜是因为你的日期列是日期或日期时间数据类型而不是字符类型。我认为LIKE仅适用于char数据类型,因此您需要进行实际的日期比较,例如Table2.Date >= '1/1/2011' AND Table2.Date <= '12/31/2011'
或类似的东西,具体取决于您使用的数据库。
答案 1 :(得分:0)
我找到了有问题的代码。
Set Rs = SQLConnection.Execute(SQL_Command_String)
使用阅读器时无法使用Set关键字。我没有找到支持此文档的文档,但删除Set解决了问题。
其余的连接代码是正确的。谢谢大家的意见。