Access 清单架构 (AccessToSQL)

以下部分介绍将 Access 架构导出到 SQL Server 时 SSMA 创建的表。

数据库

数据库元数据将导出到 SSMA_Access_InventoryDatabases 表。 此表包含以下列:

列名 数据类型 描述
DatabaseId uniqueidentifier 唯一标识每个数据库的 GUID。 此列也是表的主键。
DatabaseName nvarchar(4000) Access 数据库的名称。
ExportTime datetime SSMA 创建此元数据的日期和时间。
FilePath nvarchar(4000) Access 数据库的完整路径和文件名。
FileSize bigint Access 数据库的大小(以 KB 为单位)。
FileOwner nvarchar(4000) 指定为 Access 数据库所有者的 Windows 帐户。
DateCreated datetime 创建 Access 数据库的日期和时间。
DateModified datetime 上次修改 Access 数据库的日期和时间。
TablesCount int Access 数据库中的表数。
QueriesCount int Access 数据库中的查询数。
FormsCount int Access 数据库中的窗体数。
ModulesCount int Access 数据库中的模块数。
ReportsCount int Access 数据库中的报告数。
MacrosCount int Access 数据库中的宏数。
AccessVersion nvarchar(4000) 数据库的 Access 版本。
Collation nvarchar(4000) Access 数据库的排序规则。 排序规则确定数据库如何对字符串进行排序和比较。
JetVersion nvarchar(4000) Jet 数据库引擎版本。 Access 数据库使用基础 Jet 数据库引擎。
IsUpdatable bit 指示是否可以更新数据库。 如果值为 1,则表示数据库可更新。 如果值为 0,则表示数据库为只读属性。
QueryTimeout int 为数据库配置的 ODBC 查询超时值(以秒为单位)。 默认值为 60 秒。

表元数据将导出到 SSMA_Access_InventoryTables 表。 此表包含以下列:

列名 数据类型 描述
DatabaseId uniqueidentifier 标识包含此表的数据库。
TableId uniqueidentifier 唯一标识该表的 GUID。 此列也是表的主键。
TableName nvarchar(4000) 表的名称。
RowsCount int 该表中的行数。
ValidationRule nvarchar(4000) 定义表的有效输入的规则。 如果不存在验证规则,则该字段将包含一个空字符串。
LinkedTable nvarchar(4000) 与该表链接的另一个表(如有)。 链接表允许使用此表对另一个表执行添加、删除和更新操作。
ExternalSource nvarchar(4000) 与表关联的数据源(如有)。 如果表已链接,则此表具有在此字段中指定的外部数据源。

列元数据将导出到 SSMA_Access_InventoryColumns 表。 此表包含以下列:

列名 数据类型 描述
DatabaseId uniqueidentifier 标识包含此列的数据库。
TableId uniqueidentifier 标识包含此列的表。
ColumnId int 标识列的递增整数。 ColumnId 是表的主键。
ColumnName nvarchar(4000) 列的名称。
IsNullable bit 指定该列是否可以包含 null 值。 如果值为 1,则该列可以包含 null 值。 如果值为 0,则该列不能包含 null 值。 请注意,验证规则还可用于防止出现 null 值。
DataType nvarchar(4000) 该列的 Access 数据类型,例如 TextLong
IsAutoIncrement bit 指定该列是否自动递增整数值。 如果值为 1,则整数会自动递增。
序号 smallint 表中列的顺序,从零开始。
DefaultValue nvarchar(4000) 列的默认值。
ValidationRule nvarchar(4000) 用于验证在列中添加或更新的数据的规则。

索引

索引元数据将导出到 SSMA_Access_InventoryIndexes 表。 此表包含以下列:

列名称 数据类型 描述
DatabaseId uniqueidentifier 标识包含此索引的数据库。
TableId uniqueidentifier 标识包含此索引的表。
IndexId int 标识索引的递增整数。 此列是表的主键。
IndexName nvarchar(4000) 索引的名称。
ColumnsIncluded nvarchar(4000) 列出索引中包含的列。 列名用分号分隔。
IsUnique bit 指定索引中的每个项是否必须是唯一的。 在多列索引上,值的组合必须是唯一的。 如果值为 1,则索引将强制实施唯一值。
IsPK bit 指定是否在定义主键的过程中自动创建索引。
IsClustered bit 指定索引是否为聚集索引。 聚集索引对数据的物理存储重新排序。 一个表只能包含一个聚集索引。

外键

外键元数据将导出到 SSMA_Access_InventoryForeignKeys 表。 此表包含以下列:

列名 数据类型 描述
DatabaseId uniqueidentifier 标识包含此外键的数据库。
TableId uniqueidentifier 标识包含此外键的表。
ForeignKeyId int 标识外键的递增整数。 此列是表的主键。
ForeignKeyName nvarchar(4000) 索引的名称。
ReferencedTableId uniqueidentifier 标识包含该源列的表。
SourceColumns nvarchar(4000) 列出一个或多个外键列。
ReferencedColumns nvarchar(4000) 列出外键引用的一个或多个主键列。
IsCascadeForUpdate bit 指定如果更新主键值,则引用该键值的所有行也会更新。
IsCascadeForDelete bit 指定如果删除主键值,也会删除引用该键值的所有行。
IsEnforced bit 指定要强制实施外键约束。

查询

查询元数据将导出到 SSMA_Access_InventoryQueries 表。 此表包含以下列:

列名称 数据类型 描述
DatabaseId uniqueidentifier 标识包含此查询的数据库。
QueryId int 标识查询的递增整数。 此列是表的主键。
QueryName nvarchar(4000) 查询的名称。
QueryText nvarchar(4000) SQL 查询代码,例如 SELECT 语句。
IsUpdateable bit 指定查询是可更新还是只读属性。
QueryType nvarchar(4000) 指定查询的类型,例如 SelectSetOperation
ExternalSource nvarchar(4000) 如果查询引用外部数据源,则这是查询使用的连接字符串。

窗体

窗体元数据将导出到 SSMA_Access_InventoryForms 表。 此表包含以下列:

列名称 数据类型 描述
DatabaseId uniqueidentifier 标识包含此窗体的数据库。
FormId int 标识窗体的递增整数。 此列是表的主键。
FormName nvarchar(4000) 窗体的名称。

宏元数据将导出到 SSMA_Access_InventoryMacros 表。 此表包含以下列:

列名 数据类型 描述
DatabaseId uniqueidentifier 标识包含该宏的数据库。
MacroId int 标识宏的递增整数。 此列是表的主键。
MacroName nvarchar(4000) 宏的名称。

报表

报表元数据将导出到 SSMA_Access_InventoryReports 表。 此表包含以下列:

列名称 数据类型 描述
DatabaseId uniqueidentifier 标识包含该报表的数据库。
ReportId int 标识报表的递增整数。 此列是表的主键。
ReportName nvarchar(4000) 报表的名称。

模块

模块元数据将导出到 SSMA_Access_InventoryModules 表。 此表包含以下列:

列名 数据类型 描述
DatabaseId uniqueidentifier 标识包含该模块的数据库。
ModuleId int 标识模块的递增整数。 此列是表的主键。
ModuleName nvarchar(4000) 模块的名称。

另请参阅

导出 Access 清单