如何在Informix中为现有表table_a添加指定名称的关联外键?
在Informix中创建指定外键的方法
在Informix中创建目标外键分两种场景,具体操作如下:
1. 创建table_a时同时定义外键
如果table_a尚未创建,可在建表语句中直接声明外键约束。需保证table_a中用于关联的字段(示例中为b_id)数据类型与table_b.column_id完全匹配:
CREATE TABLE table_a ( -- 先定义其他业务字段,例如: id INT PRIMARY KEY, content VARCHAR(100), b_id INT, -- 该字段类型需与table_b.column_id完全一致 CONSTRAINT my_foreign_key_column_id FOREIGN KEY (b_id) REFERENCES table_b (column_id) );
2. 已存在table_a时添加外键
如果table_a已经创建完成,使用ALTER TABLE语句追加外键约束:
ALTER TABLE table_a ADD CONSTRAINT my_foreign_key_column_id FOREIGN KEY (b_id) -- 替换为table_a中实际关联table_b的字段名 REFERENCES table_b (column_id);
关键注意事项
table_b.column_id必须是主键或带有唯一约束的字段,Informix不支持外键关联非唯一字段- 关联字段的数据类型(包括精度、长度、空值属性等)必须完全一致,否则会报错
- 执行操作需要拥有
ALTER TABLE或CREATE TABLE的对应权限
内容的提问来源于stack exchange,提问作者Mi2830
相关产品推荐
相关产品推荐

