默认约束在 SQL Oracle 中不起作用?
DEFAULT constraint not working in SQL Oracle?
我试图获得一个约束(这只是测试代码)但是当我添加数据(完成整个 table)和 运行 它时省略了 Apptime 数据在 table 中它不会默认为 hello 值,它只是“-”。我正在使用 Oracle Live SQL。关于这是如何完成的任何线索?如果我可以在模式中而不是约束中做到这一点,那就太好了,但如果它必须是外部约束也没关系。
谢谢你,如果我在这个问题上做错了什么,我很抱歉,我是新人哈哈。
DROP TABLE Bok;
CREATE TABLE Bok (
BokID number(3) NOT NULL PRIMARY KEY,
Appdate varchar2(4),
Apptime varchar2(5) DEFAULT 'hello'
);
为了默认工作,插入查询必须使用 DEFAULT
关键字或跳过列
INSERT INTO Bok(BokID, Appdate, appTime)
VALUES (1, 'a', DEFAULT);
INSERT INTO Bok(BokID, Appdate)
VALUES (1, 'a');
定义DEFAULT ON NULL
时多了一个选项:
CREATE TABLE Bok (
BokID number(3) NOT NULL PRIMARY KEY,
Appdate varchar2(4),
Apptime varchar2(5) DEFAULT ON NULL 'hello'
);
INSERT INTO Bok(BokID, Appdate, appTime)
VALUES (1, 'a', NULL);
我试图获得一个约束(这只是测试代码)但是当我添加数据(完成整个 table)和 运行 它时省略了 Apptime 数据在 table 中它不会默认为 hello 值,它只是“-”。我正在使用 Oracle Live SQL。关于这是如何完成的任何线索?如果我可以在模式中而不是约束中做到这一点,那就太好了,但如果它必须是外部约束也没关系。
谢谢你,如果我在这个问题上做错了什么,我很抱歉,我是新人哈哈。
DROP TABLE Bok;
CREATE TABLE Bok (
BokID number(3) NOT NULL PRIMARY KEY,
Appdate varchar2(4),
Apptime varchar2(5) DEFAULT 'hello'
);
为了默认工作,插入查询必须使用 DEFAULT
关键字或跳过列
INSERT INTO Bok(BokID, Appdate, appTime)
VALUES (1, 'a', DEFAULT);
INSERT INTO Bok(BokID, Appdate)
VALUES (1, 'a');
定义DEFAULT ON NULL
时多了一个选项:
CREATE TABLE Bok (
BokID number(3) NOT NULL PRIMARY KEY,
Appdate varchar2(4),
Apptime varchar2(5) DEFAULT ON NULL 'hello'
);
INSERT INTO Bok(BokID, Appdate, appTime)
VALUES (1, 'a', NULL);