如何将列设置为“”(空字符串,相当于Oracle中的NULL),该列是多列主键?这是动机...Oracle数据库:具有NULL值的索引组织表(在多列主键中)
CREATE TABLE entities (
column1 VARCHAR2(10)
, column2 VARCHAR2(10)
, body VARCHAR2(4000)
, CONSTRAINT pk_entities -- can't do this, because sometimes
PRIMARY KEY (column1, column2) -- col2 is the empty string (NULL).
) ORGANIZATION INDEX ...
通常情况下,我会使用像一个毫无意义的顺序ID“真正的”主键(见this question),然后把唯一约束了我的数据列,像这样.. 。
CREATE TABLE entities (
, id NUMBER PRIMARY KEY
, column1 VARCHAR2(10)
, column2 VARCHAR2(10)
, body VARCHAR2(4000)
, CONSTRAINT unq_entities
UNIQUE (column1, column2)
) ORGANIZATION INDEX ...
然而,这是一个很大的索引组织表(IOT),因此主键有要对数据列(在IOT中,数据是索引),否则......我该怎么办?
谢谢! ♥
不能这样做; `column2`中的值可以是* anything *。 – Anastasia 2011-01-06 15:17:34