机子上装了sql server2000和2005,怎么控制程序访问哪个里面的数据库

来源:百度知道 编辑:UC知道 时间:2024/06/05 15:34:12
写java程序访问数据库的时候,访问的老是是sql server2000里面的数据库,即使在2005中建一个数据库名字,表名都和2000一样的数据库,它访问的总是2000里的数据库,用ODBC的时候,也是如此,请问这是怎么回事?
总和了一楼,二楼的方法,现在却出现这样的异常:
com.microsoft.sqlserver.jdbc.SQLServerException: 到主机 的 TCP/IP 连接失败。 java.net.UnknownHostException:
这是怎么回事?我已经启动了服务啊!

同一台机器上装两个数据库服务,那么它们两个的实例名是不能一样的,参照你的情况,你可能是先装的sql2000,装的时候选的是默认实例,所以访问的时候如果只用IP或机器名时,访问的就是它。而你装2005的时候肯定是设置了一个实例名,这样如果要访问2005的,你需要用IP或机器名加上实例名的格式才行,比如:

192.168.1.1\Mysql2005

楼主试试吧。

java在连接sql2005 和 sql2000 使用的字符串不一样
SQL Server 2000

String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String dbURL = "jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=sample";

而SQL Server 2005 中加载驱动和URL的语句则为

String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=sample";

还有要开启 TCP/IP协议 在SQL Server Config 网络配置里,然后重启

你可以尝试分别设置不同的用户,要连接哪个就指定哪个的用户名!