oracle 没有布尔类型?那用什么表示?

2025-03-02 01:26:36
推荐回答(5个)
回答1:

以下提供几种替代方法:       

如果用编码,实际项目使用的时候会用CHAR(1)或者INTEGER、NUMBER(1)之类的进行替代,然后在代码中进行判断,稍微熟练一下就知道跟true/false没什么区别。
如果不用编码,就会用VARCHAR2(N)之类的用原文。
另外,实际项目中对建表约束比较少操作,这种约束会消耗一点资源,包括编码、报错处理和系统内部校验等。同样的大学里学到的数据库范式在正式项目中并不会全面的实施。

【布尔类型】

布尔类型( bool),布尔类型只有两个值,false 和 true。通常用来判断条件是否成立。

如果变量值为 0 就是 false,否则为 true,布尔变量只有这两个值。

如:
例1:bool pb= -1.5; // pb=true;
例2:bool pt=0; // pt=false;

【不同的关系运算符中的布尔类型值的结果】

回答2:

用char(1)接口,1表示true,0表示false,具体的映射规则可以在高级程序语言中自定义。
oracle没有布尔类型。

回答3:

nvarchar2是针对中文的,潜台词就是性别输入是"男“”女“这样的中文。
布尔类型用number,char(1)都可以的。推荐用char(1),你可以在建表时用约束将char(1)列约束成check in (‘0’,‘1’)

回答4:

如果用编码,实际项目使用的时候会用CHAR(1)或者INTEGER、NUMBER(1)之类的进行替代,然后在代码中进行判断,稍微熟练一下就知道跟true/false没什么区别。
如果不用编码,就会用VARCHAR2(N)之类的用原文。

另外,实际项目中对建表约束比较少操作,这种约束会消耗一点资源,包括编码、报错处理和系统内部校验等。同样的大学里学到的数据库范式在正式项目中并不会全面的实施。

回答5:

可以char(1) 取值0/1 表示true/false
再有oracle 没有 nvarchar2 只有varchar2