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 的用法 » 远程数据和批量操作 » 访问远程数据 » 使用代理表

 

指定代理表位置

CREATE TABLE 和 CREATE EXISTING TABLE 都可以使用 AT 关键字定义现有对象的位置。该位置字符串由四部分组成,每部分都由句点或分号隔开。分号分隔符允许在数据库和所有者字段中使用文件名和扩展名。

AT 子句的语法是

... AT 'server.database.owner.table-name'
  • server   这是在当前数据库中使用的服务器名称(在 CREATE SERVER 语句中指定的名称)。对于所有远程数据源,此字段是必需的。

  • database   database 字段的含义取决于数据源。在某些情况下,此字段不适用,应该留空。但是,分隔符仍是必需的。

    如果数据源是 Adaptive Server Enterprise,则 database 指定表所在的数据库。例如 master 或 pubs2。

    如果数据源是 SQL Anywhere,则此字段不适用;将其留空。

    如果数据源是 Excel、Lotus Notes 或 Access,则必须包括包含表的文件的名称。如果该文件名中包含句点,请使用分号分隔符。

  • owner   如果数据库支持所有权的概念,则此字段表示所有者名。只有当多个所有者具有使用相同名称的表时才需要此字段。

  • table-name   此字段指定表的名称。如果是 Excel 电子表格,则这是工作簿中工作表的名称。如果将 table-name 留空,则假定远程表名与本地代理表名相同。

示例:

以下示例说明位置字符串的用法:

  • SQL Anywhere:

'RemoteSA..GROUPO.Employees'
  • Adaptive Server Enterprise:

'RemoteASE.pubs2.dbo.publishers'
  • Excel:

'excel;d:\pcdb\quarter3.xls;;sheet1$'
  • Access:

'access;\\server1\production\inventory.mdb;;parts'