PostgreSQL数据类型
来源:互联网 发布:java面试线程问题 编辑:程序博客网 时间:2024/06/05 16:17
numeric字段的最大精度和最大比例都是可以配置的。要声明一个类型为numeric的字段,你可以用下面的语法:
NUMERIC(precision,scale)
比如数字23.5141的精度为6,而刻度为4。
在目前的PostgreSQL版本中,decimal和numeric是等效的。numeric变长用户声明精度,精确无限制real4 字节变精度,不精确6 位十进制数字精度数据类型real和double是不准确的、牺牲精度的数字类型。不准确意味着一些数值不能准确地转换成内部格式并且是以近似的形式存储的,因此存储后再把数据打印出来可能显示一些缺失。double8 字节变精度,不精确15 位十进制数字精度serial4 字节自增整数1 到 +2147483647serial和bigserial类型不是真正的类型,只是为在表中设置唯一标识做的概念上的便利。
CREATE TABLE tablename (
colname SERIAL
);
等价于
CREATE SEQUENCE tablename_colname_seq;
CREATE TABLE tablename(
colname integer DEFAULT nextval('tablename_colname_seq') NOT NULL
);
这样,我们就创建了一个整数字段并且把它的缺省数值安排为从一个序列发生器取值。应用了一个NOT NULL约束以确保空值不会被插入。在大多数情况下你可能还希望附加一个UNIQUE或者PRIMARY KEY约束避免意外地插入重复的数值,但这个不是自动发生的。因此,如果你希望一个序列字段有一个唯一约束或者一个主键,那么你现在必须声明,就像其它数 据类型一样。
还需要另外说明的是,一个serial类型创建的序列在其所属字段被删除时,该序列也将被自动删除,但是其它情况下是不会被删除的。因此,如果你想用同一个序列发生器同时给几个字段提供数据,那么就应该以独立对象的方式创建该序列发生器。 bigserial8 字节大范围的自增整数1 到 9223372036854775807varchar(n)变长,有长度限制char(n)定长,不足补空白text变长,无长度限制timestamp[无时区]8字节包括日期和时间4713BC-5874897AD 1毫秒/14位任何日期或者时间的文本输入均需要由单引号包围,就象一个文本字符串一样。timestamp[含时区]8字节日期和时间,带时区interval12字节时间间隔date4字节只用于日期time(无时区)8字节只用于一日内时间任何日期或者时间的文本输入均需要由单引号包围,就象一个文本字符串一样。uuiduniversally unique identifier:唯一标识类型
阅读全文
0 0
- PostgreSQL数据类型
- PostgreSQL数据类型
- PostgreSQL数据类型
- PostgreSQL数据类型
- postgresql数据类型
- postgresql数据类型
- PostgreSQL数据类型
- PostgreSQL数据类型
- postgreSQL数据类型
- postgresql数据类型
- postgresql数据类型
- PostgreSQL数据类型
- PostgreSQL数据类型
- PostgreSQL数据类型
- postgresql数据类型
- PostgreSQL 数据类型
- PostgreSQL常用数据类型
- PostgreSQL常用数据类型
- Hbase WAL 机制记录
- Cordova进阶:多方法插件
- Latex参考文献的引用
- Java 的异常
- 编译错误和运行错误;
- PostgreSQL数据类型
- let和const命令
- 判别模型、生成模型
- 微擎框架之——系统内置分页加载
- 模式窗口 window.showmodaldialog 总结
- Linux环境搭建(vim,makefile,gdb...)
- 数据库SQL优化大总结之 百万级数据库优化方案
- webstorm license server
- AVCodecParser