您好,欢迎访问一九零五行业门户网

JDBC连接自定义sqlserver数据库实例名(多个实例)

java语言中,通过jdbc访问sqlserver2005(2008) 数据库 默认 实例 可以按常用的写法来写url 连接 。代码如下: [java] view plaincopy span> font-size:12px; connectioncn=drivermanager.getconnection( jdbc:sqlserver://localhost:1433;databasename=demo
java语言中,通过jdbc访问sqlserver2005(2008)数据库默认实例可以按常用的写法来写url连接。代码如下:
[java] view plaincopy
font-size:12px;>connection cn = drivermanager.getconnection(jdbc:sqlserver://localhost:1433; databasename=demo, sa,sa);   
其中localhost为sqlserver2005数据库ip,demo为数据库名。
自命名的sqlserver数据库实例(实例名:sql2008r2)的数据库又是如何访问?经过查资料和摸索发现url写法如下:
[java] view plaincopy
font-size:12px;>con = drivermanager.getconnection(jdbc:sqlserver://localhost;instancename=sql2008r2; databasename=demo, sa,sa);   
也可以这样写:
[java] view plaincopy
font-size:12px;>connection cn = drivermanager.getconnection(jdbc:sqlserver://localhost//sql2005; databasename=demo, sa,sa);   
注意,连接数据库自命名实例的url中没有端口号1433,这是sqlserver中的管理机制决定的。
1. 如果机器上安装的是sqlserver的默认实例(mssql),那么就是通过tcp 默认1433端口远程连接。如果你打开了防火墙,需要放开1433端口。
2.  如果机器上有多个数据库实例,例如 sqlserver2005, sqlserver2008, sqlserver2008r2等,而你的sqlserver2008r2安装在named instance,例如localhost\myinstance。这样连接默认是udp 1434端口(可以自己指定,在第三点的第二个选项卡ip address里面ipall里面输入sql运行的端口),并且需要打开sql browser service服务。在服务 - sql browser service,设置为自动启动。如果你打开了防火墙,需要放开udp 1434端口。
文章中有些内容不对,以下内容供后面的朋友参考。
微软官方说明:
http://msdn.microsoft.com/zh-cn/library/ms378428(v=sql.90).aspx
若要获得最佳连接性能,应在连接到指定实例时设置 portnumber。这将避免为了确定端口号而与服务器进行往返通讯。如果同时使用 portnumber 和 instancename,则会优先使用 portnumber,而忽略 instancename。
http://blog.csdn.net/jdk2006/article/details/7641399
其它类似信息

推荐信息