PostgreSQL数据库日常学习笔记15-修改表

首先我们回忆联系上几节内容。先看

CREATE TABLE student(
	studentid SERIAL PRIMARY KEY,---主键约束
	studentname VARCHAR(20) NOT NULL,---非空约束
	studentsex INT CHECK (studentsex = '0' OR studentsex ='1' ) DEFAULT 0,---认值
	studentbirthday DATE CHECK ( studentbirthday <CURRENT_TIMESTAMP ),---检查约束,表约束
	studentaddress CHAR(30),studentadmissiontime DATE,---入学时间
	CONSTRAINT checkstudentadmissiontimeandstudentbirthday CHECK (studentbirthday > studentadmissiontime )		---检查约束,表约束
);

下面代码练习删除已命名约束。

---删除约束checkstudentadmissiontimeandstudentbirthday 
ALTER TABLE student DROP CONSTRAINT checkstudentadmissiontimeandstudentbirthday;
---删除非空约束
ALTER TABLE "public".student ALTER COLUMN studentname DROP NOT NULL;

给列添加约束值。

---设置入学认时间为当前时间
ALTER TABLE student ALTER COLUMN studentadmissiontime SET DEFAULT CURRENT_TIMESTAMP;
---删除认值
ALTER TABLE student ALTER COLUMN studentadmissiontime DROP DEFAULT;

为“保持原样”,请重新执行设置入学认时间为当前时间。

修改名称

---修改名称,将列名studentid 修改为新列名studentNO
ALTER TABLE "public".student RENAME COLUMN studentid TO "studentNO";

修改名称

ALTER TABLE student RENAME TO "Student";

参考资料:Postgresql参考手册9.6版第五章第五节等。

相关文章

项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果...
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正...
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本...
wamp 环境 这个提示就是说你的版本低于10了。 先打印ph...
psycopg2.OperationalError: SSL SYSCALL error: EOF detect...