PostGreSQL - 对象关系数据库系统(ORDBMS)初探

PostGreSQL 是一个 对象关系数据库系统(ORDBMS),对象关系数据库?之前只听过关系关数据(SQL Server、Oracle、MySql等等),非关系型数据库(MongoDB、CouchDB、Hbase、Redis等等),个人理解非关系型数据库就是对象数据库,从数据库类型上来看,PostGreSQL是主流的俩类数据库的结合呀,瞬间感觉高大上起来啦,后来了解到PostGreSQL早在1987年就被正式发布使用来(当时我还没出生~~~),关键是它是类似MySQL的一个开源数据库,而且关于它的论坛很多,真实不看不知道,一看吓一跳,瞬间感觉好落伍,决定好好学习学习。

现在学习大多是有项目任务为主,开始不会深究原理,以正常使用为主,现在首先把环境打起来,熟悉下基本用法。

一、PostGreSQL 官网

http://www.enterprisedb.com/

二、最新版本数据库下载与安装

当前最新版本为9.4.4

下载地址:

http://www.enterprisedb.com/products-services-training/pgdownload#windows

注:上面有各个操作系统的下载版本,这边我使用的比较windows版本

安装步骤不复杂,我第一次安装在windows 7 安装的,一次成功,没有任何问题,当然后面在其他系统安装时遇到了一些问题,后面单独来总结下,这边的网上很多安装教程,这边提供一个链接,我就是照着上面安装的。

http://blog.chinaunix.net/uid-354915-id-3498734.html

三、基本数据库操作熟悉

这里只列出基本数据库操作命令,不涉及到触发器、视图、存储过程等操作,也不涉及到系统备份还原等操作,高级操作在后面的学习中慢慢记录。

创建用户

create user quangao password '[email protected]';

创建角色

create role quangao login password '[email protected]';

创建表空间

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 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;

。。。。

还有好多好多,其实上面这些在其他数据库中也基本上类似,这里只是熟悉下使用,不难看出,这和其他数据一样,标准语法,所以有其他数据库基础的情况下,入门门槛很低。

这边并非技术文章,只是学习过程中的记录,内容不多,仅供备忘。。。

你可能感兴趣的:(PostGreSQL)