我试图将Java应用程序从旧服务器移动到新服务器。该应用程序在Tomcat上运行,使用Microsoft SQL Server作为后端数据库,并使用数据源(ODBC)中定义的系统DSN来决定连接的位置。使用了Windows 2000/SQL Server 2000的旧服务器,新服务器使用Windows 2003/SQL Server 2005的Java/MSSQL:java.sql.SQLException无效的对象名称'TableName'
的ODBC定义服务器之间是相同的,并且定义了DB使用。
在当用户试图登录的stdout.log以下出现的新服务器:
用户正在检查 错误:值java.sql.SQLException:[微软] [ODBC SQL Server驱动程序] [SQL Server]无效的对象名称'UserTable'。
的表称为用户表在数据库中确实存在,但显示为“dbo.USerTable”通过管理界面。
是否有MSSQL的地方设置我应该调整,使其满意的“DBO”。前缀丢失,还是有其他我错过了?
[编辑]使用Windows身份验证,以及公共和来宾的角色都被赋予完全权限DB作为一个故障排除步骤。
设置固定该sa帐户的defaut DB,即使是不使用sa帐户登录(和应用程序无法知道SA证书的方式) 奇怪,但一个可接受的解决方法给出这是一个独立的系统,这个应用程序是所有数据库都会托管的。 – DrStalker 2009-05-26 23:58:34