模型包含远程数据库的模式。该模式可从现有远程数据库或统一数据库中获取。
在以下情况下使用现有远程数据库:
如果您已拥有了远程数据库,尤其是其模式不是统一数据库模式的子集的远程数据库。
如果统一数据库和远程数据库的列需要具有不同的类型。例如,如果需要将统一数据库上的 NCHAR 列映射到 UltraLite 远程数据库上的 CHAR 列。
如果远程数据库表的所有者需要不同于统一数据库表的所有者。对于新的 SQL Anywhere 远程数据库,远程表的所有者与相应统一数据库表的所有者相同。如果需要不同的所有者,应使用具备所设置的表所有权的现有 SQL Anywhere 远程数据库。(UltraLite 数据库没有所有者。)
如果需要更改现有远程数据库的模式,则在模型之外对数据库进行更改,然后运行 [更新模式向导] 来更新模型。
部署模型时,无论您如何在模型中创建远程模式,您的远程数据库始终有三个选项。远程数据库的部署时选项为:
创建新的远程数据库 部署可以使用同步模型中的远程模式来创建新的远程数据库。
更新没有用户表的现有远程数据库 如果您部署到一个空的远程数据库,则在该数据库中创建模型中的远程模式。如果您希望使用非缺省的数据库创建选项(如归类),则此选项会派上用场。
对于 SQL Anywhere 数据库,您可以参见初始化实用程序 (dbinit)的注释部分中的选项列表,这些选项无法在数据库创建之后进行设置。
对于 UltraLite 数据库,数据库属性无法在数据库创建之后进行更改。请参见为 UltraLite 选择数据库创建参数。
更新具有与模型中的模式相匹配的模式的现有远程数据库 如果您希望同步一个现有的远程数据库,则此选项会很有用。如果直接部署到现有远程数据库,则不会对任何现有远程数据做出更改。如果尝试直接部署到其模式与模型中的远程模式不匹配的现有远程数据库,则系统会提示您更新模型中的远程模式。
对于 SQL Anywhere 远程数据库,表的所有者与原始数据库的所有者相同。(UltraLite 表没有所有者。)
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |