JDBC 连接 SQL Server 数据库 - 创建连接 URL

连接 URL 的一般形式为:
jdbc:sqlserver://[serverName[/instanceName][:portNumber]][;property=value[;property=value]]
其中:

  • jdbc:sqlserver://(必需)称为子协议,且为常数。
  • serverName(可选)是要连接到的服务器的地址。它可以是 DNS 或 IP 地址,也可以是本地计算机地址 localhost 或 127.0.0.1。如果未在连接 URL 中指定服务器名称,则必须在属性集中指定。
  • instanceName (可选)是 serverName 上要连接到的实例。如果未指定,则会连接到默认实例。
  • portNumber(可选)是 serverName 上要连接到的端口。默认值为 1433。如果使用默认端口,则无需在 URL 中指定端口及其前面的“:”。
    注意:
    若要获得最佳连接性能,应在连接到指定实例时设置 portNumber。这将避免为了确定端口号而与服务器进行往返通讯。如果同时使用 portNumber 和 instanceName,则会优先使用 portNumber,而忽略 instanceName。
  • property(可选)是一个或多个选项连接属性。有关详细信息,请参阅JDBC 连接 SQL Server 数据库 - 设置连接属性 。可指定该列表中的任何属性。属性只能用分号(“;”)分隔,且不允许重复。
警告:
出于安全考虑,应避免根据用户输入的内容创建连接 URL。只应在 URL 中指定服务器名称和驱动程序。对于用户名和密码值,请使用连接属性集。有关 JDBC 应用程序中安全性的详细信息,请参阅保护 JDBC Driver 应用程序


连接实例使用用户名和密码连接到本地计算机上的默认数据库:
jdbc:sqlserver://localhost;user=MyUserName;password=*****;

注意:
尽管以上实例在连接字符串中使用了用户名和密码,但如果在 Windows 操作系统中运行应用程序,则应使用集成安全性,因为这样会更加安全。有关详细信息,请参阅本主题后面部分的JDBC 连接 SQL Server 数据库 - 创建连接 URL一节。


使用集成身份验证连接到本地计算机上的默认数据库:
jdbc:sqlserver://localhost;integratedSecurity=true;
连接到远程服务器上的指定数据库:
jdbc:sqlserver://localhost;databaseName=AdventureWorks;integratedSecurity=true;
连接到远程服务器上的默认端口:
jdbc:sqlserver://localhost:1433;databaseName=AdventureWorks;integratedSecurity=true;
通过指定自定义应用程序名称进行连接:
jdbc:sqlserver://localhost;databaseName=AdventureWorks;integratedSecurity=true;applicationName=MyApp;

指定的多个 SQL Server 实例SQL Server 2000 和 SQL Server 2005 允许在每台服务器上安装多个数据库实例。每个实例都由一个专用名称所标识。若要连接到指定的 SQL Server 实例,可以使用指定实例的端口号(首选),也可将实例名指定为 JDBC URL 属性或 datasource 属性。如果未指定实例名属性或端口号属性,则会创建与默认实例的连接。如以下实例所示:
若要使用端口号,请执行下列操作:
jdbc:sqlserver://localhost:1433;integratedSecurity=true;<more properties as required>;
若要使用 JDBC URL 属性,请执行下列操作:
jdbc:sqlserver://localhost;instanceName=instance1;integratedSecurity=true;<more properties as required>;

转义连接 URL 中的值由于包含特殊字符(如空格、分号和引号),所以必须转义连接 URL 值的某些部分。如果这些字符包含在大括号中,则 JDBC 驱动程序将支持对其进行转义。例如,{;} 将转义分号。
转义的值可以包含特殊字符(特别是“=”、“;”、“[]”和空格),但不能包含大括号。应将必须进行转义且包含大括号的值添加到属性集中。

注意:
大括号内的空白为原义字符,不能删除。



通过集成身份验证进行连接JDBC 驱动程序支持通过 integratedSecurity 连接字符串属性在 Windows 操作系统上使用“类型 2”集成身份验证。若要使用集成身份验证,请将 sqljdbc_auth.dll 文件复制计算机中 Windows 系统路径下的 JDBC 驱动程序安装目录中。
sqljdbc_auth.dll 文件的安装位置如下:
<安装目录>/sqljdbc_<版本>/<语言>/auth/

注意:
如果您运行 32 位的 Java 虚拟机 (JVM),则使用 x86 文件夹中的 sqljdbc_auth.dll 文件,即使操作系统是 x64 版本也不例外。如果您在 x64 处理器上运行 64 位 JVM,则使用 x64 文件夹中的 sqljdbc_auth.dll 文件。如果您在 IA-64 处理器上运行 64 位 JVM,则使用 IA64 文件夹中的 sqljdbc_auth.dll 文件。


也可以通过设置 java.libary.path 系统属性来指定 sqljdbc_auth.dll 的目录,例如,如果 JDBC 驱动程序安装在默认目录中,您可以在 Java 应用程序启动时使用以下虚拟机 (VM) 参数来指定 DLL 的位置:
-Djava.library.path=C:/Microsoft SQL Server 2005 JDBC Driver/sqljdbc_<version>/enu/auth/x86

通过 IPv6 地址进行连接JDBC 驱动程序支持使用具有连接属性集和 serverName 连接字符串属性的 IPv6 地址。连接字符串不支持在 IPv6 地址中使用初始 serverName 值,如 jdbc:sqlserver://serverName。使用 serverName 的名称而不是原始 IPv6 地址将适用于连接中的所有情况。以下实例提供了详细信息。
使用 serverName 属性
jdbc:sqlserver://;serverName=3ffe:8311:eeee:f70f:0:5eae:10.203.31.9//instance1;integratedSecurity=true;
使用属性集
Properties pro = new Properties();
pro.setProperty("serverName", "serverName=3ffe:8311:eeee:f70f:0:5eae:10.203.31.9//instance1");
Connection con = DriverManager.getConnection("jdbc:sqlserver://;integratedSecurity=true;", pro);

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,我可以回答这个问题。您需要先下载SQL Server JDBC驱动程序,然后在Java应用程序中配置JDBC连接字符串和登录凭据。在连接字符串中指定服务器名称、数据库名称和端口号。您可以使用Java中的java.sql包中提供的API来连接和执行查询。 ### 回答2: JDBC(Java Database Connectivity)是一种用于在Java应用程序中访问各种数据库的API。通过JDBC,我们可以连接SQL Server数据库并执行各种数据库操作。 首先,我们需要以下几个步骤来连接SQL Server数据库: 1. 导入所需的JDBC包:我们需要在Java项目中导入适当的JDBC包,以便在代码中使用相关的类和方法。 2. 加载驱动程序:在使用JDBC之前,我们需要加载SQL Server数据库的驱动程序。我们可以使用Class.forName()方法来加载驱动程序。例如,对于SQL Server的驱动程序,我们可以使用以下代码加载: Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 3. 建立数据库连接:在加载驱动程序之后,我们可以使用DriverManager.getConnection()方法来建立与数据库连接。我们需要提供数据库URL、用户名和密码。例如,以下是一个建立与SQL Server数据库连接的示例代码: Connection conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=myDB;user=sa;password=123456"); 其中,"jdbc:sqlserver://localhost:1433"指定了数据库的地址和端口号,"myDB"是数据库的名称,"sa"和"123456"分别是数据库的用户名和密码。 4. 执行数据库操作:一旦连接建立,我们就可以使用Connection对象来执行各种数据库操作,例如查询、插入、更新和删除数据等。我们可以使用Statement、PreparedStatement或CallableStatement来执行相应的SQL语句和存储过程。 5. 关闭数据库连接:在程序结束后,应该关闭数据库连接以释放资源。我们可以使用Connection对象的close()方法来关闭连接。 总结而言,通过JDBC连接SQL Server数据库,我们需要导入JDBC包、加载驱动程序、建立数据库连接、执行数据库操作,并最终关闭数据库连接。这样,我们就可以通过Java应用程序与SQL Server数据库进行交互。 ### 回答3: jdbc是一种用于Java编程语言与关系型数据库进行连接的API。通过jdbc可以实现与sql server数据库连接。 在使用jdbc连接sql server数据库时,需要以下步骤: 1. 导入sql serverjdbc驱动:这是使用jdbc连接sql server数据库的前提。可以从官方网站或者其他可靠资源中下载合适的jdbc驱动,并将其导入到Java项目中。 2. 加载jdbc驱动:在代码中使用Class.forName()方法加载jdbc驱动。例如,对于sql server数据库,在代码中可以使用以下代码加载jdbc驱动: ``` Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); ``` 3. 建立数据库连接:使用DriverManager类的getConnection()方法来建立与sql server数据库连接。在getConnection()方法中,需要指定sql server数据库连接URL、用户名和密码。例如,可以使用以下代码建立数据库连接: ``` String url = "jdbc:sqlserver://localhost:1433;databaseName=mydatabase"; String username = "myusername"; String password = "mypassword"; Connection conn = DriverManager.getConnection(url, username, password); ``` 4. 进行数据库操作:建立数据库连接后,就可以使用Connection对象来执行SQL语句并操作数据库。可以使用PreparedStatement或Statement对象来执行SQL语句,并通过ResultSet对象获取查询结果。 5. 关闭数据库连接:在完成数据库操作后,需要关闭数据库连接以释放资源。可以使用Connection对象的close()方法来关闭数据库连接。例如,可以使用以下代码关闭数据库连接: ``` conn.close(); ``` 需要注意的是,在使用jdbc连接sql server数据库时,还需要遵循数据库连接的一些规则和最佳实践,如使用连接池来管理数据库连接、使用事务控制等,以提高数据库的性能和安全性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值