Postgres 快速入门
简介
postgres 是一款开源,免费的对象-关系数据库。
登陆
psql -U 用户名 -d 数据库名 -h 127.0.0.1 -p 5432
参数含义如下:-U指定用户,-d指定数据库,-h指定服务器,-p指定端口。
如果 postgres 中存在和当前系统用户同名的用户,可以不用输入-U 用户名
,直接
psql 数据库名
如果要访问的数据库名和用户名一致,那么可以不用输入任何参数直接登陆:
psql
命令行操作
-
\l
or\list
:列出当前的所有数据库 -
\l+
:列出数据库更详细的信息 -
\l t*
:支持通配符,列出t
开头的数据库 -
\c + 数据库名
:选择指定的数据库 -
\d
:列出当前数据库的所有的关系表 -
\du
:列出所有用户
postgres 还支持用特有命令createdb
, dropdb
来创建和删除数据库:
# 创建数据库
createdb myDB
# 删除数据库
dropdb myDB
数据库操作
数据库操作和通常的 SQL 数据库,语法一致。
# 创建新表
CREATE TABLE user_tbl(name VARCHAR(20), signup_date DATE);
# 插入数据
INSERT INTO user_tbl(name, signup_date) VALUES('张三', '2013-12-22');
# 选择记录
SELECT * FROM user_tbl;
# 更新数据
UPDATE user_tbl set name = '李四' WHERE name = '张三';
# 删除记录
DELETE FROM user_tbl WHERE name = '李四' ;
# 添加栏位
ALTER TABLE user_tbl ADD email VARCHAR(40);
# 更新结构
ALTER TABLE user_tbl ALTER COLUMN signup_date SET NOT NULL;
# 更名栏位
ALTER TABLE user_tbl RENAME COLUMN signup_date TO signup;
# 删除栏位
ALTER TABLE user_tbl DROP COLUMN email;
# 表格更名
ALTER TABLE user_tbl RENAME TO backup_tbl;
# 删除表格
DROP TABLE IF EXISTS backup_tbl;
数据库导入导出
导入数据库
psql -U 用户名 -d 导入的数据库名 -f 文件名.sql
导出数据库
pg_dump -U 用户名 -d 导出的数据库名 -f 文件名.sql
参考资料
PostgreSQL新手入门: http://www.ruanyifeng.com/blog/2013/12/getting_started_with_postgresql.html
PostgreSQL中文文档:http://www.postgres.cn/docs/12/