Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 双精度默认值0不为空_Sql_Oracle_Precision_Create Table - Fatal编程技术网

Sql 双精度默认值0不为空

Sql 双精度默认值0不为空,sql,oracle,precision,create-table,Sql,Oracle,Precision,Create Table,创建表时,使用了以下列定义。有人能解释一下第一列定义的含义吗 Create Table abc_TEMP (column_1 DOUBLE PRECISION DEFAULT 0 Not Null, ....); 这意味着列_1应存储具有126位二进制精度的浮点值。因此,如果有人试图在这个字段中输入字符串或日期,他们应该会得到一个错误。这就是双精度的含义 这还意味着,如果有人在表中插入一行,并且没有为列_1指定值,Oracle应该在该行上默认值为零。这就是默认值0的含义 这还意味着,如果有人显

创建表时,使用了以下列定义。有人能解释一下第一列定义的含义吗

Create Table abc_TEMP (column_1 DOUBLE PRECISION DEFAULT 0 Not Null,
....);

这意味着
列_1
应存储具有126位二进制精度的浮点值。因此,如果有人试图在这个字段中输入字符串或日期,他们应该会得到一个错误。这就是双精度的含义

这还意味着,如果有人在表中插入一行,并且没有为
列_1
指定值,Oracle应该在该行上默认值为零。这就是默认值0的含义


这还意味着,如果有人显式地试图将
COLUMN_1
的值设置为NULL,则不应允许他们这样做,他们应该会得到一个错误。这就是
notnull
的意思。

这意味着
列1
应该存储具有126位二进制精度的浮点数。因此,如果有人试图在这个字段中输入字符串或日期,他们应该会得到一个错误。这就是双精度的含义

这还意味着,如果有人在表中插入一行,并且没有为
列_1
指定值,Oracle应该在该行上默认值为零。这就是默认值0的含义

这还意味着,如果有人显式地试图将
COLUMN_1
的值设置为NULL,则不应允许他们这样做,他们应该会得到一个错误。这就是
notnull
的意思。

您正在创建一个名为
column_1
的数据类型列(它是一个二进制精度为126的浮点数)

此列不明确接受空值,但如果在
INSERT
语句中忽略它,则数字0将被设置为它。

您正在创建一个名为
column\u 1
的数据类型列(它是一个二进制精度为126的浮点数)


此列不显式接受空值,但如果在
INSERT
语句中忽略它,则数字0将被设置为它。

您不理解的部分是什么?这似乎是不言自明的。你不明白哪一部分?这似乎是不言自明的。谢谢迭戈的解释。这当然有帮助。您能否进一步解释“二进制精度126”的概念?双精度是ANSI对浮点(p)Oracle数据类型的定义。对于数字数据类型:精度p=位数。对于浮点数据类型:精度p=二进制精度(乘以0.30103进行转换)。所以FLOAT=FLOAT(126)=126 x 0.30103=大约37.9位精度。感谢Diego的解释。这当然有帮助。您能否进一步解释“二进制精度126”的概念?双精度是ANSI对浮点(p)Oracle数据类型的定义。对于数字数据类型:精度p=位数。对于浮点数据类型:精度p=二进制精度(乘以0.30103进行转换)。所以FLOAT=FLOAT(126)=126 x 0.30103=大约37.9位精度。感谢Matthew的解释。这当然有帮助。你能进一步解释一下“二进制精度126”的概念吗?是的,这意味着它不能存储一个不能在内部用126位表示的数字。例如,您不能将pi的值存储到10亿位。感谢Matthew的解释。这当然有帮助。你能进一步解释一下“二进制精度126”的概念吗?是的,这意味着它不能存储一个不能在内部用126位表示的数字。例如,不能将pi的值存储到十亿位。