com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 ‘xxx' 无效。
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(Unknown Source)
at com.microsoft.sqlserver.jdbc.IOBuffer.processPackets(Unknown Source)
环境:我使用的数据库是 SQL Server 2005
如果查询时出现以上错误提示,
1.首先检查你的数据库表名称是否有拼写错误,若有,改正后测试下。
2.其次检查你的数据库连接是否成功,可暂时将SQL以及相关语句注释,测试。
3.若以上两种都无法解决,则:出现的错误是找不到这个表的问题,
解决方法有两种:
1.假设你的数据库名为“chunci”,表名为“chunci99”,字段为:name,password;SQL语句的写法如下
String sql = “SELECT * FROM chunci..chunci99 WHERE name=?,password=?”
<注:实例化方法用PreparedStatement>
特别注意:“user..person” 库名和表名之间不是一个‘.’,而是两个!
2.sql = "SELECT * FROM [表名] WHERE name=? and password=?";
改成
sql = "use [数据库名] SELECT * FROM [表名] WHERE name=? and password=?";
或者:
sql = "SELECT * FROM [数据库名].dbo.[表名] WHERE name=? and password=?";
~~~~~希望对你有所帮助~~~~~
当遇到com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 'xxx' 无效的错误时,可以检查数据库表名拼写、数据库连接是否正常。如果问题仍未解决,可能是因为SQL语句中数据库名和表名的表示方式不正确,解决方案包括正确使用两个点号分隔数据库和表名,或明确指定数据库名和schema(dbo)。确保SQL语句的格式正确,例如使用'USE [数据库名]'或'[数据库名].[schema].[表名]'结构。
103





