Postgresql学习--更新中
-
wzgchen
2015-08-22 21:08:55
-
NoSQL
-
原创
第一章:表基本操作
1.1
建表
create table tb_emp1 (id int,name varchar(25),deptid int,salary float);
主键约束
create table tb_emp2 (id int primary key,name varchar(25),deptid int,salary float);
create table tb_emp3 (id int,name varchar(25),deptid int,salary float,primary key(id));
create table tb_emp4 (id int,name varchar(25),deptid int,salary float,primary key(id,name));
非空约束,外键约束
create table tb_emp5 (id int primay key,]name varchar(25) not null,deptid int,salary float,constraint fk_dept2 foreign key(deptid) references tb_dept1(id));
唯一约束
create table tb_emp6 (id int primary key,name varchar(25) unique,deptid int,salary float);
create table tb_emp7(id int primary key,name varchar(25) ,deptid int,salary float,constraint sth unique (name));
主键一个表只能声明一个,但唯一约束可以有多个。
默认约束
create table tb_emp8 (id int primary key,name varchar(25) unique,deptid int default 1111,salary float);
1.2 修改表
修改表名
alter table tb_emp7 rename to tb_emp7_old;
修改字段类型
alter table tb_emp7 alter column name type varchar(30);
修改字段名
alter table tb_emp7 rename name to firstname;
添加字段
alter table tb_emp7 add column managerid int;
alter table tb_emp7 add column managerid int not null;
删除字段
alter table tb_emp7 drop name;
删除表的外键约束
alter table tb_emp5 drop constraint fk_dept2;
1.3删除表
删除没有关联的表
drop table tb_emp5;
删除有主外键关系的表
create table tb_dept2 (id int primary key,name varchar(22),location varchar(50));
create table tb_emp (id int primary key,name varchar(25),deptid int,salary float,constraint fk_emp_dept foreign key(deptid) references tb_dept2(id));
alter table tb_emp drop constraint fk_emp_dept;
drop table tb_dept2;
第二章 数据类型
整数类型
smallint
int
bigint
浮点类型
real
double precision