返回首页
当前位置: 主页 > 数据库 > Oracle教程 >

PostgreSQL数据类型--布尔类型、位串类型

时间:2017-02-23 23:36来源:电脑教程学习网 www.etwiki.cn 编辑:admin

PostgreSQL支持标准的 SQL boolean 数据类型,boolean值只能有两种: '真'('True') 或 '假'('False')。boolean有两种值外的第三种状态,'未知'('Unknow'),用 SQL空状态表示。位串就是一串 1 和 0 的字符串。它们可以用于存储和视觉化位掩码。

 


1.布尔类型

boolean类型存储空间为1字节,可接受的"真"值的有效文本输入值有:TRUE、't'、'true'、'y'、'yes'、'1'。"假"值可接受的有效输入值有:FALSE、'f'、'false'、'n'、'no'、'0'。建议使用与SQL标准兼容的TRUE和FALSE做为boolean类型的输入值。查询时使用字母 t 和 f做为boolean型数据显示。例如,users表中有列used字段为boolea类型,字段查询后显示如下:
used
-------
t
f

 


2.位串类型

有两种类型的SQL位类型:bit(n) 和 bit varying(n);bit类型的数据必须准确匹配长度n; bit varying类型数据是最大长度为n的变长类型;把一个位串值转换成bit(n),那么它的右边将被截断或者在右边补齐零,以符合定义的n位长度,不会抛出任何错误。把一个位串数值转换成 bit varying(n),如果它超过了n位,那么它的右边将被截断。示例:创建包括a(bit),b(bit varying)两列表test,插入数据后执行查询,SQL语句如下:
CREATE TABLE test (a bit(3), b bit varying(5));
INSERT INTO test VALUES (B'101', B'00');
INSERT INTO test VALUES (B'10', B'101');
ERROR: Bit string length 2 does not match type bit(3)
INSERT INTO test VALUES (B'10'::bit(3), B'101');
SELECT * FROM test;

显示结果如下:
a | b
-----+-----
101 | 00
100 | 101

------分隔线----------------------------
标签(Tag):数据库 PostgreSQL PostgreSQL数据
------分隔线----------------------------
推荐内容
猜你感兴趣