Sql server 2000 链接测试

1. Sql server 2000 数据库自己规定了其数据库链接URL 的通常格式,以下:sql

jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]]数据库

之间无空格,其中:服务器

·        jdbc:sqlserver://(必需)称为子协议,且为常数。app

·        serverName(可选)是要链接到的服务器的地址。它能够是 DNS IP 地址,也能够是本地计算机地址 localhost 127.0.0.1。若是未在链接 URL 中指定服务器名称,则必须在属性集中指定。sqlserver

·        instanceName (可选)是 serverName 上要链接到的实例。若是未指定,则会链接到默认实例(master)。spa

·        portNumber可选)是 serverName 上要链接到的端口。默认值为 1433。若是使用默认端口,则无需在 URL 中指定端口及其前面的“:”设计

·        property(可选)是一个或多个选项链接属性。有关详细信息,请参阅设置链接属性。可指定该列表中的任何属性。属性只能用分号(“;”)分隔,且不容许重复。server

2.  链接实例写法有:ip

A.    使用用户名和密码链接到本地计算机上的默认数据库:ci

jdbc:sqlserver://localhost;user=MyUserName;password=*****;

B.       使用集成身份验证链接到本地计算机上的默认数据库:

jdbc:sqlserver://localhost;integratedSecurity=true;

C.    链接到远程服务器上的指定数据库:

jdbc:sqlserver://localhost;databaseName=AdventureWorks;integratedSecurity=true;

D.      链接到远程服务器上的默认端口:

jdbc:sqlserver://localhost:1433;databaseName=AdventureWorks;integratedSecurity=true;

 

 

 

E.    经过指定自定义应用程序名称进行链接:

jdbc:sqlserver://localhost;databaseName=AdventureWorks;integratedSecurity=true;applicationName=MyApp;

3 .以咱们设计器中的URL写法为例详细说明:

jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test

其中

(1).  databaseName=test为链接属性,属性值只用“;”分割,咱们只用了一个,若有多个属性即可写成:

;databaseName=test;user=MyUserName;password=*****;

所以在test后加不加“;” 链接效果同样,即URL写成

jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test

jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test

都能正确读取test数据库

(2).Sql server 2000 数据库默认的端口为1433,默认的数据库实master(应该是安装时自带的数据库)

  URLdatabaseName 前误加了一“_”空格后,以下:

jdbc:microsoft:sqlserver://192.168.100.112:1433; databaseName=test

此时获取URL时自动判断空格时URL结束,即得到的实际URL为:

jdbc:microsoft:sqlserver://192.168.100.112:1433;

 而此URL链接的为sql server 2000 默认的数据库 master,因此读取的就是数据库master中的表

 

 

 

结论:

在写sql server 2000的数据库URL时,除其自己已有的特殊字符外,要添加其余特殊字符必须进行转义,将这些字符包含在大括号中, JDBC 驱动程序将支持对其进行转义。例如,{;} 将转义分号。

转义的值能够包含特殊字符(特别是“=”“;”“[]”和空格),但不能包含大括号。应将必须进行转义且包含大括号的值添加到属性集中。

方案:

将咱们所用的数据库改变为默认数据库是一种方法,但通常存在多个可用的数据库,因此除sqlserver 自己规定的URL格式外,在咱们的程序中最好进行限制,只使用

jdbc:microsoft:sqlserver://ip:port;databaseName=Databasename

一种写法,且中间不能有空格等

相关文章
相关标签/搜索