Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - 编程 » SQL Anywhere 数据访问 API » SQL Anywhere JDBC 驱动程序 » 使用 jConnect JDBC 驱动程序 » 将 URL 提供给驱动程序

 

指定服务器上的数据库

每个 SQL Anywhere 数据库服务器一次都能装载一个或多个数据库。如果通过 jConnect 连接时提供的 URL 只指定了服务器,而没有指定数据库,则尝试连接的数据库是服务器上的缺省数据库。

您可以通过下列任一方式提供 URL 的扩展形式,由此而指定特定数据库。

使用 ServiceName 参数
jdbc:sybase:Tds:host:port?ServiceName=database

使用问号,后面跟随一系列赋值,这是向 URL 提供参数的标准方式。ServiceName 是否大写并不重要,但 = 号两边不能有空格。database 参数是数据库名,而不是服务器名。数据库名不得包括路径或文件后缀。例如:

Connection con = DriverManager.getConnection(
      "jdbc:sybase:Tds:localhost:2638?ServiceName=demo", "DBA", "sql");
使用 RemotePWD 参数

存在一个用于将其它连接参数传递到服务器的解决方案。

这一技术允许您使用 RemotePWD 字段来提供其它连接参数,如数据库名或数据库文件。您可用 put 方法将 RemotePWD 设置成一个 [属性] 字段。

以下代码对如何使用该字段进行了说明。

import java.util.Properties;
.
.
.
DriverManager.registerDriver( (Driver)
    Class.forName(
    "com.sybase.jdbc3.jdbc.SybDriver").newInstance()
    );
     
Properties props = new Properties();
props.put( "User", "DBA" );
props.put( "Password", "sql" );
props.put( "RemotePWD", ",DatabaseFile=mydb.db" );
 
Connection con = DriverManager.getConnection(
    "jdbc:sybase:Tds:localhost:2638", props );

如示例中所示,在 DatabaseFile 连接参数前必须加上一个逗号。利用 DatabaseFile 参数,您可使用 jConnect 启动服务器上的数据库。缺省情况下,数据库启动时的设置为 autostop=YES。如果向 DatabaseFile (DBF) 或 DatabaseName (DBN) 连接参数指定 utility_db(例如,DBN=utility_db),则会自动启动实用程序数据库。

有关实用程序数据库的详细信息,请参见使用实用程序数据库