每个 SQL Anywhere 数据库服务器一次都能装载一个或多个数据库。如果通过 jConnect 连接时提供的 URL 只指定了服务器,而没有指定数据库,则尝试连接的数据库是服务器上的缺省数据库。
您可以通过下列任一方式提供 URL 的扩展形式,由此而指定特定数据库。
jdbc:sybase:Tds:host:port?ServiceName=database |
使用问号,后面跟随一系列赋值,这是向 URL 提供参数的标准方式。ServiceName 是否大写并不重要,但 = 号两边不能有空格。database 参数是数据库名,而不是服务器名。数据库名不得包括路径或文件后缀。例如:
Connection con = DriverManager.getConnection( "jdbc:sybase:Tds:localhost:2638?ServiceName=demo", "DBA", "sql"); |
存在一个用于将其它连接参数传递到服务器的解决方案。
这一技术允许您使用 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),则会自动启动实用程序数据库。
有关实用程序数据库的详细信息,请参见使用实用程序数据库。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |