com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 无效

chunci99 2009-04-14 08:57:50
谁遇到这样的问题啦,或是以解决这样的问题,请分享下你的经验吧~大家来讨论
我的sql 语句是:
sql = "SELECT * FROM Lperson WHERE name=? and password=?";

下面是错误提示:
com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 'Lperson' 无效
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(Unknown Source)
at com.microsoft.sqlserver.jdbc.IOBuffer.processPackets(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.getPrepExecResponse(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PreparedStatementExecutionRequest.executeStatement(Unknown Source)
at com.microsoft.sqlserver.jdbc.CancelableRequest.execute(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeRequest(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.executeQuery(Unknown Source)
at org.apache.jsp.login_005fconf_jsp._jspService(login_005fconf_jsp.java:99)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:857)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:565)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1509)
at java.lang.Thread.run(Thread.java:619)
...全文
4466 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhixulong 2010-12-26
  • 打赏
  • 举报
回复
很好啊,我也找到了,哈哈谢谢
abuying 2010-09-20
  • 打赏
  • 举报
回复 1

sql = "SELECT * FROM Lperson WHERE name=? and password=?";
改成
sql = "use [数据库名] SELECT * FROM Lperson WHERE name=? and password=?";
--a或者
sql = "SELECT * FROM [数据库名].dbo.[Lperson] WHERE name=? and password=?";

lovedahai123 2010-09-19
  • 打赏
  • 举报
回复
我刚遇到这个问题,不知道怎么解救
Hacimfy 2010-06-16
  • 打赏
  • 举报
回复
我也遇到了相同的问题,在你写的语句前面指定数据库名字就可以了。
zy_love 2009-09-15
  • 打赏
  • 举报
回复
你看一下你的
连接语句

DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;databaseName=tableName");

看一下红色指定的数据库里,是否有你要查询的表
zy_love 2009-09-15
  • 打赏
  • 举报
回复
你看一下你的
连接语句

DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;databaseName=tableName");

看一下红色指定的数据库里,是否有你要查询的表
xmmlanya 2009-09-11
  • 打赏
  • 举报
回复
7 楼正解, 需要指定数据库
llpoo 2009-05-12
  • 打赏
  • 举报
回复
sql = "SELECT * FROM Lperson WHERE name=? and password=?";
改成
sql = "use [数据库名] SELECT * FROM Lperson WHERE name=? and password=?";
chunci99 2009-04-14
  • 打赏
  • 举报
回复
那我再回去看看哪里有问题,谢谢你!
jinjazz 2009-04-14
  • 打赏
  • 举报
回复
我觉得你数据库连错了,既然报错他不存在一定是不存在的
chunci99 2009-04-14
  • 打赏
  • 举报
回复
这个表存在的,执行插入也没问题,
jinjazz 2009-04-14
  • 打赏
  • 举报
回复
Lperson这个表没有吧
chunci99 2009-04-14
  • 打赏
  • 举报
回复
sql语句问题出在哪里呢??
jinjazz 2009-04-14
  • 打赏
  • 举报
回复
对象名 无效
你的sql语句有问题

34,874

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧