附上java执行数据库查询代码,和报错信息。大家来看一下怎么回事~
代码:
PreparedStatement stmt_customer = conn.prepareStatement( "select level from customer where m_id = ? ");
stmt_customer.setString(1, customerID);
rset_customer = stmt_customer.executeQuery();
if(rset_customer.next())
{
.......
}
错误提示:
java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] LEVEL 子句中包含一个保留字、拼写错误或丢失的参数,或标点符号不正确。
而且没有进入if语句
请问是哪里出错了啊?
------解决方案--------------------有一个关键字.
比如你不能在SQL Server里建一个叫user的表
------解决方案--------------------你添加的customerID是什么内容,它里面可能有sql Server的关键字。
------解决方案--------------------这个跟PreparedStatement无关吧,最普遍的问题,stmt_customer.setString(1, new String(strsource.getBytes( "ISO-8859-1 "), "GB2312 "))转一下就好了。