PostGresql 是一个 对象关系数据库系统(ORDBMS),对象关系数据库?之前只听过关系关数据(sql Server、Oracle、MysqL等等),非关系型数据库(MongoDB、CouchDB、Hbase、Redis等等),个人理解非关系型数据库就是对象数据库,从数据库类型上来看,PostGresql是主流的俩类数据库的结合呀,瞬间感觉高大上起来啦,后来了解到PostGresql早在1987年就被正式发布使用来(当时我还没出生~~~),关键是它是类似MysqL的一个开源数据库,而且关于它的论坛很多,真实不看不知道,一看吓一跳,瞬间感觉好落伍,决定好好学习学习。
现在学习大多是有项目任务为主,开始不会深究原理,以正常使用为主,现在首先把环境打起来,熟悉下基本用法。
一、PostGresql 官网
二、最新版本数据库下载与安装
当前最新版本为9.4.4
下载地址:
http://www.enterprisedb.com/products-services-training/pgdownload#windows
注:上面有各个操作系统的下载版本,这边我使用的比较windows版本
安装步骤不复杂,我第一次安装在windows 7 安装的,一次成功,没有任何问题,当然后面在其他系统安装时遇到了一些问题,后面单独来总结下,这边的网上很多安装教程,这边提供一个链接,我就是照着上面安装的。
三、基本数据库操作熟悉
这里只列出基本数据库操作命令,不涉及到触发器、视图、存储过程等操作,也不涉及到系统备份还原等操作,高级操作在后面的学习中慢慢记录。
创建用户
create user quangao password 'quangao@123.com';
创建角色
create role quangao login password 'quangao@123.com';
创建表空间
create tablespace pnlyspace LOCATION 'D:/postgresql/data'
创建命名空间属于哪个角色
create tablespace pnlyspace owner quangao LOCATION 'D:/postgresql/data'
创建数据库属于哪个角色和使用哪个表空间
create database "pnly2" owner quangao tablespace pnlyspace;
修改表空间
alter database pnly set tablespace pnlyspace
查选数据库所属角色和表空间
SELECT datname,rolname,spcname FROM pg_database db,pg_authid au,pg_tablespace ts WHERE datname = 'pnly' AND datdba = au.oid AND dattablespace = ts.oid
创建新表
CREATE TABLE user_tbl(name VARCHAR(20),signup_date DAT
E);
插入数据
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;
。。。。
还有好多好多,其实上面这些在其他数据库中也基本上类似,这里只是熟悉下使用,不难看出,这和其他数据一样,标准语法,所以有其他数据库基础的情况下,入门门槛很低。