【发布时间】:2018-11-06 06:59:14
【问题描述】:
我调用命令
ALTER TABLE tableName ADD COLUMN IF NOT EXISTS columnName SERIAL
在 postgresql 中。第一次运行时,会根据需要创建一个具有相应序列的新列。但是,当再次运行时,会在数据库中创建另一个序列,即使该列已经存在。有谁知道阻止这个新序列创建的任何修复?
【问题讨论】:
-
在执行
alter table之前检查列是否存在。据推测,序列是在检查表是否存在列之前创建的。 -
戈登是对的。见"8.1.4. Serial Types"。
标签: sql postgresql