PostgreSQL的优势:
【安装】
安装完成后,找到安装目录的路径:
cd C:\Program Files\PostgreSQL\9.4\bin
创建数据库服务:
pg_ctl register -N PostgreSQL -D " C:\Program Files\PostgreSQL\9.4\data"
控制面板→管理工具→服务,找到PostgreSQL,并启动。
【pgAdmin的启动与连接】
【数据库的基本操作】
【创建数据库】
create database sample_db;
【修改数据库属性 ALTER语句】
[语法] alter database db_name [ [with] option [...] ]
[例如] 修改mytest 数据库的名称和拥有者:
alter database mytest rename to mytest1;
alter database mytest1 owner to postgres;
[例如] 修改mytest1 数据库的连接最大值为10:
alter database mytest1 with connection limit = 10;
【删除数据库 DROP语句】
[语法] drop database db_name [, ...n]
[例如] 删除mytest1 数据库:
drop database mytest1;
[备注] 数据库处于以下状态时不能删除:数据库正在使用;数据库正在恢复;数据库包含用于复制的对象。
【数据表的基本操作】
-----------------【创建数据表】-----------------
[案例] 在test库中创建 tb_emp1 表:
create table tb_emp1(
id int,
name varchar(25),
deptId int,
salary float
);
【主键】
[案例] 在test库中创建 tb_emp2 表,主键为id:
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(
name varchar(25),
deptId int,
salary float,
primary key(name,deptId)
);
【外键】
create table tb_dept1(
id int primary key,
name varchar(22) not null,
location varchar(50)
);
create table tb_emp5(
id int primary key,
name varchar(25),
deptId int,
salary float,
CONSTRAINT fk_emp_dept1 FOREIGN KEY(deptId) REFERENCES tb_dept1(id)
);
【非空约束】
create table tb_emp6(
id int primary key,
name varchar(25) NOT NULL,
deptId int,
salary float,
CONSTRAINT fk_emp_dept2 FOREIGN KEY(deptId) REFERENCES tb_dept1(id)
);
【唯一约束】
create table tb_dept2(
id int primary key,
name varchar(22) UNIQUE,
location varchar(50)
);
create table tb_dept3(
id int primary key,
name varchar(22),
location varchar(50),
CONSTRAINT STH UNIQUE(name)
);
【默认约束】
create table tb_emp7(
id int primary key,
name varchar(25) NOT NULL,
deptId int DEFAULT 1111,
salary float,
CONSTRAINT fk_emp_dept3 FOREIGN KEY(deptId) REFERENCES tb_dept1(id)
);
-----------------【修改数据表】-----------------
ALTER TABLE tb_dept3 RENAME TO tb_department3;
【修改字段的数据类型】
ALTER TABLE tb_dept1 ALTER COLUMN name TYPE VARCHAR(30);
【修改字段名】
ALTER TABLE tb_dept1 RENAME location TO loc;
【添加字段】
ALTER TABLE tb_dept1 ADD COLUMN managerId INT;
ALTER TABLE tb_dept1 ADD COLUMN column1 VARCHAR(12) NOT NULL;
【删除字段】
ALTER TABLE tb_dept1 DROP COLUMN column1;
【删除表的外键约束】
ALTER TABLE tb_emp5 DROP CONSTRAINT fk_emp_dept1;
-----------------【删除数据表】-----------------
【删除没有被关联的表】
DROP TABLE IF EXISTS tb_dept2;
【删除被其他表关联的主表】
(1)先删除与之关联的子表,再删除父表;
(2)将关联表的外键约束条件取消,再删除父表。