繁体   English   中英

SQL Server JDBC驱动程序错误

[英]Sql Server JDBC Driver Error

当我尝试根据如下所示的参数计数动态设置preparestament参数时,SQL Server JDBC驱动程序给我错误。

preparedStatement = root.prepareStatement("SELECT * FROM users WHERE DATE BETWEEN ? AND ?");
if(preparedStatement.getParameterMetaData()!=null){ //exception at this line

//do some logic
}

错误:

com.microsoft.sqlserver.jdbc.SQLServerException:com.microsoft.sqlserver.jdbc.SQLServerException:关键字“ BETWEEN”附近的语法不正确。

对于Mysql jdbc驱动程序,相同的代码工作正常。

(我使用msj的sqljdbc41.jar)。

谁能遇到这种问题或解决方案?

DATE是保留字,您需要将其用引号引起来:

root.prepareStatement("SELECT * FROM users WHERE \"DATE\" BETWEEN ? AND ?");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM