急等,做了一个登陆的JAVABEAN,但老是提示密码错误呀?

laofan233 2005-03-23 03:40:38
我用JbuilderX做了一个登陆的页面,用了jdbc连接数据库,用tomact4.0做的WEB服务器,但我用我在SQLSERVER中的帐号登陆时,它老是报这样的错误:
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]在关键字 'user' 附近有语法错误。

at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)

at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)

at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processErrorToken(Unknown Source)

at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReplyToken(Unknown Source)

at com.microsoft.jdbc.sqlserver.tds.TDSRPCRequest.processReplyToken(Unknown Source)

at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReply(Unknown Source)

at com.microsoft.jdbc.sqlserver.SQLServerImplStatement.getNextResultType(Unknown Source)

at com.microsoft.jdbc.base.BaseStatement.commonTransitionToState(Unknown Source)

at com.microsoft.jdbc.base.BaseStatement.postImplExecute(Unknown Source)

at com.microsoft.jdbc.base.BasePreparedStatement.postImplExecute(Unknown Source)

at com.microsoft.jdbc.base.BaseStatement.commonExecute(Unknown Source)

at com.microsoft.jdbc.base.BaseStatement.executeQueryInternal(Unknown Source)

at com.microsoft.jdbc.base.BasePreparedStatement.executeQuery(Unknown Source)

at mystore.LoginResultBean.loginResult(LoginResultBean.java:42)

at org.apache.jsp.loginResult$jsp._jspService(loginResult$jsp.java:103)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:201)

at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:381)

at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:473)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)

at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)

at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)

at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)

at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)

at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2347)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)

at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)

at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)

at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)

at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)

at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)

at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1027)

at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1125)

at java.lang.Thread.run(Thread.java:534)
请问一下该怎么办呀????
...全文
153 点赞 收藏 15
写回复
15 条回复
laofan233 2005年03月24日
我已经装了SQL Server 2000 Driver for JDBC Service Pack 3
但它还是提示这样的错误了:java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Invalid operation for the current cursor position.
可怎么办呢?真是郁闷的很!
回复 点赞
yjsmask 2005年03月23日
最好是把你的sql语句打印出来
然后到查询分析器中运行这个,如果没问题就OK
回复 点赞
whirlsun 2005年03月23日
这是一个思路。有可能和驱动程序有关...
回复 点赞
shuimuyi 2005年03月23日
有没有安装SQL Server 2000 Driver for JDBC Service Pack 3 呢?
回复 点赞
leiwanlileiwanli 2005年03月23日
我想在JAVA区中问一个问题,我怎么没有找到地方
Help!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
回复 点赞
chenxb1980 2005年03月23日
try
{
Connection connSql=mydbconn.myconn();
PreparedStatement prep = connSql.prepareStatement("select * from user where userName=? and userPassword=?");
prep.setString(1,name);
prep.setString(2,pswd);
rs=prep.executeQuery();
if(rs.next()){//////--------
flag=Integer.parseInt(rs.getString(4));
return flag;
}/////////////--------
}
catch(Exception ex)
{
ex.printStackTrace();
}
回复 点赞
laofan233 2005年03月23日
现在原来的那个问题已经没有了,又出了新问题了
如下:
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Invalid operation for the current cursor position.

at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)

at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)

at com.microsoft.jdbc.base.BaseResultSet.validateCursorPosition(Unknown Source)

at com.microsoft.jdbc.base.BaseResultSet.getString(Unknown Source)
该怎么办呢?
回复 点赞
laofan233 2005年03月23日
谢谢各位!
我调了一下还是不行
我的一个函数是这样写的:
public int loginResult(String name,String pswd)
{
ResultSet rs=null;
int flag=0;

try
{
Connection connSql=mydbconn.myconn();
PreparedStatement prep = connSql.prepareStatement("select * from user where userName=? and userPassword=?");
prep.setString(1,name);
prep.setString(2,pswd);
rs=prep.executeQuery();
rs.next();
flag=Integer.parseInt(rs.getString(4));
return flag;
}
catch(Exception ex)
{
ex.printStackTrace();
}
return 0;
}
其中的user是表名,但它还是提示user附近有问题
回复 点赞
StarsWu 2005年03月23日
sql语句都不晓得,错误不好找。
可能是sql语句里有错,看看where有没有写等等。
回复 点赞
20020829 2005年03月23日
就是啊。。sql语句最好少用关键字。另外注意sql语句正确与否。你可以先测试语句再用到代码里面嘛。
把user改成userName而且同时不要忘了改数据库字段名啊。
回复 点赞
nicolahul 2005年03月23日
sql语句是什么啊?
回复 点赞
chouchy 2005年03月23日

把表中的列名user改为userName或其他
回复 点赞
henghowzc 2005年03月23日
你仔细看下你的String sql="select user form tablename"语句有没有问题.说不定是没有空格等原因
.就是你的sql语句有问题.你可以但不调试,把sql拷贝下来放在查询分析器里查一下,如果没问题就一定ok了.我猜多数是你自己sql语句太长,中间几个关键字间没空格或者没有加'之类的问题.你自己好好检查,仔细点.问题一定出在sql语句上.不是你链接的问题
回复 点赞
laofan233 2005年03月23日
谢谢
但我试了下还是不行呀,它还是报这样的错误
是不是我的驱动有问题,但我的JBuiderX是连的上数据库的呀
请误有什么办法解决吗?谢谢先!
回复 点赞
gaochao79 2005年03月23日
user是关键字 写sql语句要这样 [user]
eg: select [user] from tablename
回复 点赞
发动态
发帖子
Web 开发
创建于2007-09-28

5.2w+

社区成员

34.1w+

社区内容

Java Web 开发
社区公告
暂无公告