我的任务是将带有SQL Server 2005数据库的经典ASP Web应用程序从Windows Server 2003(32位)迁移到带有SQL Server 2012的Windows Server 2012 R2。
代码非常陈旧,我不想进行任何代码更改,以使其在上述环境中可行。
我已经实现了上述几乎所有内容,但是当在某个页面上测试Web应用程序时,如果给出了报告生成命令,那么应用程序就会出现错误...
用于SQL Server的Microsoft OLE DB提供程序错误“80040e14”
'*'附近的语法不正确。
D:\ WEBSITES \ XXXXXXXXX \ REPORTS ../ common.asp,第84行
以下是第84行代码:
rs.Open sql, cn, adOpenStatic, adLockReadOnly, adCmdText
奇怪的是,当我将SQL Server从2012更改为SQL Server 2008 R2时,应用程序正常运行并生成所需的报告并在浏览器中显示。
我还想提一下,这个代码/数据库组合在Windows 2003(IIS6)/ SQL Server 2005上正常工作。
我尝试过将SQL Server 2012的兼容模式更改为SQL 2005(90),但这没有帮助。
任何帮助都将受到高度赞赏。
答案 0 :(得分:0)
我迟到了,但我收到了相同的错误编号,我正在拔头发以确定原因。原来是我的一个列名“模块”必须是关键字。当我将模块名称包含为“[模块]”时,一切正常。因此,您可以检查以确定代码中的某个词现在是否被视为关键字。 (我相信可能是这种情况,因为新版本可能有更多关键字。)