postgresql中的基本类型、表约束以及插入记录insert into

postgresql常见的基础数据类型

参考:https://www.runoob.com/postgresql/postgresql-data-type.html 

数值型

  • integer(int):整形,4个字节
  • real:浮点型,4个字节 ,可以有小数点;有点像float
  • serial:序列型;通常给id设置为serial,让它可以自增

文字型

  • char:字符型; 
  • varchar:通常用varchar
  • text:大文本

布尔型

  • boolean

日期型

  • date:年月日
  • time:时分秒
  • timestamp:年月日+时分秒

特色类型:

  • Array:可以将表字段类型设为Array数组类型,在一个字段里边存一组数据
  • JSON型
  • XML型

表约束

常见的表约束有以下几种:

  • not null:不能为空;注意,空字符串“”是表示有值的,它不是not null
  • unique:在所有数据中值必须唯一
  • check:字段设置条件
  • default:字段默认值
  • primary key:主键,不能为空,且不能重复。它自带两个约束:not null,unique

比如以下例子,创建一个数据表posts

create table posts(
	id serial primary key,
	title varchar(255) not null,
	content text check(length(content)>3),
	is_draft boolean default true,
	is_delete boolean default false,
	created_date timestamp default 'now'
)

好,现在开始测试。

可以看到报错了,因为content长度必须大于3.注意,这里title虽然是空字符串“”,但是它不是not null,正如下面的例子是可以成功的

但是如果直接把值设为null的话,就会报错,如下,因为表设计时title字段是not null 类型

当输入的title为not null类型,content字段的内容长度也满足条件,即大于3时,就可以正常执行,如下

(注意,上面的id号没有连续是因为我在测试过程中删掉了一些记录)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值