创建表时,已使用以下column_definition。有人可以解释第一列定义的含义吗?
创建表abc_TEMP(列_1双精度默认值0不为空, ....);
答案 0 :(得分:2)
您正在创建名为column_1
的{{3}}数据类型列(这是二进制精度为126的浮点数)。
此列不明确接受null值,但是如果在INSERT
语句中省略该值,则将为其设置数字0。
答案 1 :(得分:0)
这意味着COLUMN_1
应该存储为浮点数的值,二进制精度为126位。因此,如果有人尝试在此字段中输入字符串或日期,他们应该会收到错误消息。这就是DOUBLE PRECISION
的意思。
这还意味着,如果有人在表中插入一行并且未指定COLUMN_1
的值,则Oracle应该仅将该行的默认值设置为零。这就是DEFAULT 0
的意思。
这还意味着,如果有人明确尝试将COLUMN_1
的值设置为NULL,则不应允许他们,并且他们会得到错误。这就是NOT NULL
的意思。