前页 后页

DDL限制

数据库管理系统(DBMS)的基本功能是允许通过结构化语言来定义数据库对象。这种语言称为DDL(用于数据定义语言或数据描述语言)。每个DBMS的DDL语法都是唯一的。尽管所有DBMS都有通用的DDL语句和关键字,但存在差异,要求每个DBMS在Enterprise Architect具有自己的DDL模板集。

该页面总结了每个受支持的数据库管理系统的主要限制。

MS Access

  • 注释不能应用于(或更改)表,表列,表约束或视图,因此Enterprise Architect忽略这些差异
  • CREATE TABLE语句不支持列默认值的定义,因此Enterprise Architect从所有生成的DDL中排除了Default定义。但是,它确实突出了比较逻辑中的默认差异
  • 通常,DDL中的对象名称可以括在方括号([])中,以便它们可以包含空格和其他非标准字符,但是CREATE VIEW DDL语句不支持方括号表示法。 “创建视图” DDL模板用下划线(_)字符替换所有空格

的MySQL

  • 当MySQL版本大于5.5.3时,注释只能应用于索引和唯一约束。
  • 注释只能在创建索引和唯一约束时应用,因此更改索引或唯一约束的注释会导致约束被删除并重新创建
  • 不支持检查约束;虽然MySQL DDL引擎可以解析此类语句,但它只会忽略它们
  • 注释不能应用于(或更改)视图,过程或函数,因此Enterprise Architect忽略这些差异

甲骨文

  • 注释不能应用于(或更改)过程,序列或功能,因此Enterprise Architect忽略这些差异

PostgreSQL的

  • 当前, Enterprise Architect不支持函数参数,因此,任何按名称引用函数的语句(COMMENT ON或DROP)都会失败,因为它们必须使用函数名称和参数的组合

SQL Lite

  • 约束不能添加到现有表中;必须删除并创建表(包括Create语句中的新Constraint)
  • 任何对象类型都不支持注释,因此Enterprise Architect忽略所有注释差异