Eva*_*oll 4 postgresql foreign-key constraint database-internals ddl
除了写作风格之外,还有什么优势吗?
CREATE TABLE foo (
a int PRIMARY KEY,
b int
);
Run Code Online (Sandbox Code Playgroud)
进而,
CREATE TABLE bar (
a int REFERENCES foo,
c int
);
Run Code Online (Sandbox Code Playgroud)
超过,
BEGIN;
CREATE TABLE bar (
a int,
c int
);
ALTER TABLE bar
ADD FOREIGN KEY (a)
REFERENCES foo;
COMMIT;
Run Code Online (Sandbox Code Playgroud)
我正在尝试构建一个 DDL 生成器,所以我想知道是否需要支付对列的约束(我之前生成它们的地方),或者将它们全部移到表之外?我知道这些结果产生了相同的表格,我只是想知道引擎盖下是否有任何优势——更少的沃尔玛?等等?
两个 DDL 导致相同的数据库结构没有区别。
当FOREIGN KEY关系使用复合键时,需要第二种形式(或以下形式)。
CREATE TABLE bar (
a int,
c int,
FOREIGN KEY (a,c) REFERENCES foo(a,c)
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
279 次 |
| 最近记录: |