我有一张表格,需要将其中的两个值设置为主键,因为我在其他表中引用了这个组合作为外键。表格定义和我需要填写的数据如下:
create table T1
(
sno number(10),
desc varchar2(10),
constraint T1_PK primary key(sno,desc)
)
DATA to put
sno | desc
---------------------------
100 | "hundred"
000 | null
120 | "one twenty"
123 | "" <EMPTY STRING>
000 | "" <EMPTY STRING>
问题在于desc有时可能为空。主键不能为空,所以当我遇到空值时,我只是在表中插入""。问题在于有时候desc可能是空字符串。 如果我插入关于数据100,Null和100,“”是两个不同的东西,但我无法将它们放入表中。我不想在null的情况下放置一些字符串,比如'EMPTY',因为这可能会让查看表的最终用户感到困惑。
1)如何处理desc的null情况,同时保持它作为主键。我不能使用自动序列号。 2)如何区分由我引入的null字符串和已经存在的null字符串?