我需要在Oracle中创建一张表,其中有一列需要设置为布尔类型。请问如何实现?我已经在网上搜索过,但没有找到明确的答案。
我需要在Oracle中创建一张表,其中有一列需要设置为布尔类型。请问如何实现?我已经在网上搜索过,但没有找到明确的答案。
在SQL中没有BOOLEAN数据类型。但我们可以像这样表示它:
CREATE TABLE tt
(test NUMBER(1) NOT NULL CHECK (test in (0,1)))
请参考Oracle的CREATE TYPE。
在某些数据库中,可以定义自己的布尔数据类型(据说这在Oracle中不起作用,但它说明了这个想法):
CREATE DOMAIN BOOLEAN
AS NUMBER(1)
NOT NULL
CHECK (value IN (0,1))
这可以像其他类型一样用于表格列。
没有布尔数据类型。你需要使用NUMBER(1)
。
阅读Oracle文档中的虚拟列,并像其他人建议的那样使用数字:0-假,1-真。在Oracle的CREATE表中没有BOOLEAN数据类型。