麻烦改变表SQL

时间:2018-05-17 04:12:25

标签: sql oracle ddl

嘿,伙计们只是想知道我在这个剧本中做错了什么。

ALTER TABLE SSV_TOURS (
ADD CRUISE_ID# CHAR(5),
ADD CONSTRAINT TOURS_CRUISEID#_FK FOREIGN KEY (CRUISE_ID#) REFERENCES SSV_CRUISES(CRUISE_ID#)
);

当我单独执行ADD命令时,表格会改变,所以我不确定我做错了什么。提前致谢

2 个答案:

答案 0 :(得分:1)

在Oracle中,... output: { filename: !RELEASE ? '[name].js' : '[name].js', chunkFilename: !RELEASE ? '[id].js' : '[id]-[chunkhash:8].js', jsonpFunction: '__LIB__', publicPath: '/content/dist/' } ... splitChunks: { name: true, chunks: 'async', cacheGroups: { default: false, commons: { chunks: 'initial', name: 'shared', minChunks: 2, maxInitialRequests: 5, minSize: 0 }, vendor: { test: /[\\/]node_modules[\\/]/, name: 'vendor', enforce: true, chunks: 'all', minChunks: 1 } } } 一次只允许一次修改。您可以在documentation的语法图中看到这一点:没有后退箭头。

所以:

alter table

答案 1 :(得分:0)

我认为你不能在一个alter table语句中混合column_clause和constraint_clause。但是在您的情况下,您需要将alter table拆分为两个(一个带有添加列,另一个带有add约束)或稍微重写一下你的语句

ALTER TABLE SSV_TOURS (
ADD CRUISE_ID# CHAR(5) 
    CONSTRAINT TOURS_CRUISEID#_FK FOREIGN KEY (CRUISE_ID#) 
    REFERENCES SSV_CRUISES(CRUISE_ID#)
);