站内搜索: 请输入搜索关键词

当前页面: 开发资料首页JSP 专题为什么我在数据库查询分析器可以运行可是在程序里提示是 [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]第 1 行: '.' 附近有语

为什么我在数据库查询分析器可以运行可是在程序里提示是 [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]第 1 行: '.' 附近有语

摘要: 为什么我在数据库查询分析器可以运行可是在程序里提示是 [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]第 1 行: '.' 附近有语


String sql = "SELECT leavemsg.*,stu_info.studentname,admin_info.adminname" +
"from admin_info,leavemsg,stu_info" +
"where leavemsg.Studentid = stu_info.id " +
"ORDER BY QTime " ;

=================================================================
public Vector getMessages() {
String sql = "SELECT leavemsg.*," +
"stu_info.studentname," +
"admin_info.adminname " +
"from admin_info,leavemsg,stu_info" +
"where leavemsg.Studentid = stu_info.id " +
"ORDER BY leavemsg.QTime";
Vector msglist=null;
try {
Connection con = DataTool.getConn();
PreparedStatement ps = con.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
msglist= new Vector();

while (rs.next()) {
MessageBean msg = new MessageBean();
msg.setID(rs.getInt(1));
msg.setAskID(rs.getInt("Studentid"));
msg.setAskname(rs.getString("studentname"));
msg.setAsktime(rs.getDate("QTime"));
msg.setcontext(rs.getString("context" ));
msg.setAnsID(rs.getInt("Adminid"));
msg.setAnsname(rs.getString("adminname"));
msg.setAnstime(rs.getDate("Atime"));
msg.setAnscontext(rs.getString("Anscontext"));
msglist.add(msg);

}


} catch (SQLException e) {

e.printStackTrace();
}
return msglist;
}
=============================================
数据库绝对可以连得上

[Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]第 1 行: '.' 附近有语法错误。
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.TDSExecuteRequest.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 org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92)
at message.MessageDAO.getMessages(MessageDAO.java:58)
at org.apache.jsp.message_jsp._jspService(message_jsp.java:67)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:620)



"from admin_info,leavemsg,stu_info" +
"where leavemsg.Studentid = stu_info.id " +
->
"from admin_info,leavemsg,stu_info " +
"where leavemsg.Studentid = stu_info.id " +



String sql = "SELECT leavemsg.*,stu_info.studentname,admin_info.adminname" +
"from admin_info,leavemsg,stu_info" +
"where leavemsg.Studentid = stu_info.id " +
"ORDER BY QTime " ;

from 前面没加空格
where 前面没加空格

哎,反正你仔细点,老大





打印System.out.println(sql);

SELECT leavemsg.*,stu_info.studentname,admin_info.adminname from admin_info,leavemsg,stu_info where leavemsg.Studentid = stu_info.id ORDER BY leavemsg.QTime



难道楼主给出的getMessages()方法不是运行的代码?
很明显:
"from admin_info,leavemsg,stu_info" +
"where leavemsg.Studentid = stu_info.id " +



忘了说了
那是我改后打印出来的语句 刚把原先的错误也看成改后也报了错
还真是大意了

现在好了
谢谢fosjos(无聊的菜鸟程序员)


↑返回目录
前一篇: 请文在jsp页面中如何下载一个中文名字的word文档?
后一篇: 关于jspsmartupload上传文件的问题?请高手指点12