本来写好文章了,但是csdn不知道出什么问题了,发表文章的时候不知道出现什么问题了,竟然没发表成功,然后就跳转到写博客的也来了,辛辛苦苦写的东西就这样没了!重新写吧!谁叫咱使用人家的blog呢!!
最近由于需要使用postgresql 数据库,之前从来没接触过,所以就是从0开始学起,积累下学习的过程以及学习中遇到的问题,方便日后可以查找方便同事也希望给刚开始学习postgresql 数据库的人起到抛砖引玉的作用!
声明:1.本次仅仅限于使用postgresql 数据库,没涉及到安装操作,安装postgresql 数据库以及遇到的问题在日后或完成,因为涉及到自己操作
2.postgresql 数据库是之前安装好的,操作仅仅限于在本机上操作,暂时不涉及远程连接数据库操作
3.linux操作系统,完全命令行操作没有图形界面,所以本系列中主要是记录命令行功能
正文:
连接数据库操作:
psql是postgresql数据库提供的连接数据库shell命令,格式 psql 【option】 dbname
在终端输入psql 会使用默认的方式连接本地数据库,使用的用户名是登陆linux系统使用的用户名,
psql -U username -W pass 以及psql -U username -W pass databasenaem都可以实现连接数据库的功能,第一种方式是使用用户名username密码pass连接默认数据库(具体链接那个数据库还没搞清楚),第二种方式使用用户名username密码pass连接username数据库。如果登录成功之后将显示类似信息
Welcome to psql 8.0.6,the Postgresql interactive terminal.
Type: /copyright for distribution terms
/h for help with sql commands
/? for help with psql commands
/g or terminate with semicolon to execute query
/q to quit
连接成功之后所有的命令都是使用”/“+ 字符或者word完成相应的功能。现将常用的几个列车
/l 列出所有数据库
/dt 列出连接数据库中所有表
/di 列出连接数据库中所有index
/dv 列出连接数据库中所有view
/h sql命令帮助
/? / 所有命令帮助
/q 退出连接
/d tablename 列出指定tablename的表结构
可以尝试执行下面两句sql
SELECT current_date
SELECT version()
是不是nothing happened,这是因为postgresql数据库要求必须使用;结尾否则不予执行,加上;之后就能看到结果了。
如果我们想创建数据库怎么办呢?
我们知道createdb和dropdb可以创建和删除数据库,但是如果我们这个时候执行出现什么问题呢?可以试一试,提示是个错误。
为什么呢?
createdb和dropdb是shell脚本,所以现在又两种方式执行
(1).退出连接进入终端,输入createdb test —U user -W pass 稍等提示创建数据库成功
dropdb test —U user -W pass 提示drop成功
(2).在未退出连接中使用 /! createdb test —U user -W pass 稍等提示创建数据库成功
/! dropdb test —U user -W pass 提示drop成功