[英]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.