导航:首页 > 程序命令 > postgresql命令操作

postgresql命令操作

发布时间:2022-06-29 15:30:15

1. pgAdmin如何使用postgresql应该怎么设置

.2.1 pgAdmin3的启动

您可以在应用程序---系统工具中找到pgAdmin3的启动项;
也可以在命令行下输入:
xiaop@xiaop-laptop:~$ /usr/bin/pgadmin3 start

6.2.2 连接已创建的数据库mydb ;

点击档案-----新增服务器,然后在跳出的窗口下输入:
地址:localhost
描述:服务器名称(随意填写)
维护数据库:postgres
用户名:自己创建一个(详情参见创建用户)
密码:和用户名对应(创建用户时自己创建)

点击确定后大家便可以查看postsql已有的数据库了;
注:pgAdmin3的数据库和终端下创建的数据库是完全同步的(可以用刷新查看效果), pgAdmin3是比较方便的图形化管理工具,它可以创建图表,管理数据库等,有关pgAdmin3的详细介绍我们在以后讨论,本文主要介绍命令行下的操作。图形化管理工具能做到的命令行都可以做到,您可以在命令行下创建表,在pgAdmin3上查看是否同步:

7. 创建和删除表;

7.1 创建新表;

创建完数据库之后,您就可以创建新表了,可以通过声明表的名字和所有字段的名字及其类型来创建表,例如:
mydb#CREATE TABLE weather (
city varchar(80),
temp_lo int, -- 最低气温
temp_hi int, -- 最高气温
prcp real, -- 降水量
date date
);

注:您可以在 psql 里连换行符一起键入这些东西。 psql 可以识别该命令直到分号才结束,不要忘记“;”
您可以在 SQL 命令中自由使用空白(也就是空格,tab,和换行符)。 这就意味着您可以用和上面不同的对齐方式键入命令。 两个划线("--") 引入注释。 任何跟在它后面的东西直到该行的结尾都被忽略。 SQL 是对关键字和标识符大小写不敏感的语言,只有在标识符用双引号包围时才能保留它们的大小写属性。

7.2 数据类型;

上面例子中的varchar(80) 声明一个可以存储最长 80 个字符的任意字符串的数据类型。 int 是普通的整数类型。 real 是一种用于存储单精度浮点数的类型。 date 类型应该可以自解释。
PostgresSQL 支持标准的 SQL 类型 int,smallint, real,double precision, char(N), varchar(N),date, time,timestamp 和 interval,还支持其他的通用类型和丰富的几何类型。 PostgreSQL 可以客户化为定制任意的用户定义的数据类型,您可以参考PostgreSQL的中文文档来查询;

7.3 删除表;

如果您不再需要某个表,或者您想创建一个不同的表,那么您可以用下面的命令删除它:
mydb#DROP TABLE tablename

8. 向表中添加行;

8.1 INSERT;

INSERT 用于向表中添加行,您可以输入(在数据库中操作):
mydb#INSERT INTO weather VALUES ('San Francisco', 46, 50, 0.25, '1994-11-27');

注:所有数据类型都使用了相当明了的输入格式。 那些不是简单数字值的常量必需用单引号(')包围, 就象在例子里一样。

8.2 point类型输入;

point 类型要求一个座标对作为输入,如下:
mydb#INSERT INTO cities VALUES ('San Francisco', '(-194.0, 53.0)');

8.3 COPY;

您还可以使用 COPY 从文本文件中装载大量数据。 这么干通常更快,因为 COPY 命令就是为这类应用优化的, 只是比 INSERT 少一些灵活性.比如:
mydb#COPY weather FROM '/home/user/weather.txt';

注:weather.txt是您提前写好的符合格式标准的表格内容文档;

9. 查询一个表;

9.1 SELECT;

要从一个表中检索数据就是查询这个表。 SQL 的 SELECT 就是做这个用途的。 该语句分为选择列表(列出要返回的字段部分),表列表(列出从中检索数据的表的部分), 以及可选的条件(声明任意限制的部分)。比如,要检索表 weather 的所有行,键入:
SELECT * FROM weather;
<code>
输出结果:
<code>
city | temp_lo | temp_hi | prcp | date
---------------+---------+---------+------+------------
San Francisco | 46 | 50 | 0.25 | 1994-11-27
San Francisco | 43 | 57 | 0 | 1994-11-29
Hayward | 37 | 54 | | 1994-11-29
(3 rows)

您可以在选择列表中写任意表达式,而不仅仅是字段列表。比如,您可以:
SELECT city, (temp_hi+temp_lo)/2 AS temp_avg, date FROM weather;

这样应该得出:
city | temp_avg | date
---------------+----------+------------
San Francisco | 48 | 1994-11-27
San Francisco | 50 | 1994-11-29
Hayward | 45 | 1994-11-29
(3 rows)

请注意这里的 AS 子句是如何给输出字段重新命名的。(AS 子句是可选的。)

9.2 WHERE;

一个查询可以使用 WHERE 子句"修饰",声明需要哪些行。 WHERE 子句包含一个布尔(真值)表达式,只有那些布尔表达式为真的行才会被返回。 允许您在条件中使用常用的布尔操作符(AND,OR, 和 NOT)。 比如,下面的查询检索旧金山的下雨天的天气:
mydb#SELECT * FROM weather
WHERE city = 'San Francisco' AND prcp > 0.0;

结果:
city | temp_lo | temp_hi | prcp | date
---------------+---------+---------+------+------------
San Francisco | 46 | 50 | 0.25 | 1994-11-27
(1 row)

9.3 排序;

您可以要求返回的查询是排好序的:
mydb#SELECT * FROM weather
ORDER BY city;

得出结果:
city | temp_lo | temp_hi | prcp | date
---------------+---------+---------+------+------------
Hayward | 37 | 54 | | 1994-11-29
San Francisco | 43 | 57 | 0 | 1994-11-29
San Francisco | 46 | 50 | 0.25 | 1994-11-27

在这个例子里,排序的顺序并非绝对清晰的,因此您可能看到 San Francisco 行随机的排序。 但是如果您使用下面的语句,那么就总是会得到上面的结果
SELECT * FROM weather
ORDER BY city, temp_lo;

您可以要求查询的结果按照某种顺序排序, 并且消除重复的行输出:
mydb#SELECT DISTINCT city
FROM weather;

得出结果:
city
---------------
Hayward
San Francisco
(2 rows)

2. postgresql如何执行sql文件

在pgAdmin的窗口中,直接打开SQL文件然后执行就可以了。
你所说的Oracle的执行方式,应该是在sql
plus命令窗口中执行sql文件。这个功能在PostgreSQL的命令窗口psql中也有此功能:开启psql命令窗口之后,执行命令:
\i sqlfile_path就可以执行指定的sql文件了,
其中sqlfile_path是要执行的sql文件,
如下图,
要注意的是:
在Windows系统中,路径中用的是斜杠,不是反斜杠。

3. postgresql命令 linux中怎么退出

直接在命令行输入:quit或者是exist即可完成退出。 备注:其实最简单的方法就是关闭登录窗口,或者切换用户的形式完成退出当前用户的数据库操作。

4. 如何用命令打开postgresql数据库

F:\PostgreSQL\9.2\bin>psql.exe
-h
localhost
-U
postgres
-d
Test
-p
5432psql
(9.2.4)输入
"help"
来获取帮助信息.Test=#Test=#
help;您正在使用psql,
这是一种用于访问PostgreSQL的命令行界面键入:
\right
显示发行条款
\h
显示
SQL
命令的说明
\?
显示
pgsql
命令的说明
\g
或者以分号(;)结尾以执行查询
\q
退出注:
数据库名称区分大小写的。使用某些有密码的用户的情况下,
会提示输入密码.F:\PostgreSQL\9.2\bin>psql.exe
-h
localhost
-U
test
-d
Test
-p
5432用户
test
的口令:psql
(9.2.4)输入
"help"
来获取帮助信息.Test=#

5. 如何学习PostgreSql sql 语法

在pgadmin的窗口中,直接打开sql文件然后执行就可以了。
你所说的oracle的执行方式,应该是在sql
plus命令窗口中执行sql文件。这个功能在postgresql的命令窗口psql中也有此功能:开启psql命令窗口之后,执行命令:
\i sqlfile_path就可以执行指定的sql文件了,
其中sqlfile_path是要执行的sql文件,
如下图,
要注意的是:
在windows系统中,路径中用的是斜杠,不是反斜杠。

6. ubuntu下安装 postgresql 的命令

你的安装命令不完整,少了一个 install ,
如果是安装PostgreSQL客户端:sudo apt-get install postgresql-client

如果是安装PostgreSQL服务器:sudo apt-get install postgresql

正常情况下,安装完成后,PostgreSQL服务器会自动在本机的5432端口开启。
如果还想安装图形管理界面,可以运行这个命令:sudo apt-get install pgadmin3
更多关于PostgreSQL的用法,楼主可以网络《Linux就该这么学》,搜索关键字可以获得相应的教程。

7. linux怎么用命令登陆postgres

(1)用户实用程序:

createdb 创建一个新的PostgreSQL的数据库(和SQL语句:CREATE DATABASE 相同)

createuser 创建一个新的PostgreSQL的用户(和SQL语句:CREATE USER 相同)

dropdb 删除数据库

dropuser 删除用户

pg_mp 将PostgreSQL数据库导出到一个脚本文件

pg_mpall 将所有的PostgreSQL数据库导出到一个脚本文件

pg_restore 从一个由pg_mp或pg_mpall程序导出的脚本文件中恢复PostgreSQL数据库

psql 一个基于命令行的PostgreSQL交互式客户端程序

vacuumdb 清理和分析一个PostgreSQL数据库,它是客户端程序psql环境下SQL语句VACUUM的shell脚本封装,二者功能完全相同

(2)系统实用程序

initdb 创建一个用于存储数据库的PostgreSQL数据目录,并创建预定义的模板数据库template0和template1,生成共享目录表 catalog;此程序通常只在安装PostgreSQL时运行一次

initlocation 创建一个辅助的PostgreSQL数据库存储区域

ipcclean 从停止的PostgreSQL服务器中清除共享内在和孤立信号标志

pg_ctl 启动、停止、重启PostgreSQL服务(比如:pg_ctl start 启动PostgreSQL服务,它和service postgresql start相同)

pg_controldata 显示PostgreSQL服务的内部控制信息

postgres PostgreSQL单用户模式的数据库服务

postmaster PostgreSQL多用户模式的数据库服务

4.这里面最重要的是psql这个客户端程序最为重要。启用客户端程序psql的方法是:

切换到PostgreSQL预定义的数据库超级用户postgres,启用客户端程序psql,并连接到自己想要的数据库,比如说:

psql template1

出现以下界面,说明已经进入到想要的数据库,可以进行想要的操作了。

template1=#

5.在数据库中的一些命令:

template1=# \l 查看系统中现存的数据库

template1=# \q 退出客户端程序psql

template1=# \c 从一个数据库中转到另一个数据库中,如template1=# \c sales 从template1转到sales

template1=# \dt 查看表

template1=# \d 查看表结构

template1=# \di 查看索引
[基本数据库操作]========================
*创建数据库:
create database [数据库名];

*查看数据库列表:
\d

*删除数据库:
drop database [数据库名];

创建表:
create table ([字段名1] [类型1] <references 关联表名(关联的字段名)>;,[字段名2] [类型2],......<,primary key (字段名m,字段名n,...)>;);

*查看表名列表:
\d

*查看某个表的状况:
\d [表名]

*重命名一个表:
alter table [表名A] rename to [表名B];

*删除一个表:
drop table [表名];
========================================

[表内基本操作]==========================
*在已有的表里添加字段:
alter table [表名] add column [字段名] [类型];

*删除表中的字段:
alter table [表名] drop column [字段名];

*重命名一个字段:
alter table [表名] rename column [字段名A] to [字段名B];

*给一个字段设置缺省值:
alter table [表名] alter column [字段名] set default [新的默认值];

*去除缺省值:
alter table [表名] alter column [字段名] drop default;

在表中插入数据:
insert into 表名 ([字段名m],[字段名n],......) values ([列m的值],[列n的值],......);

修改表中的某行某列的数据:
update [表名] set [目标字段名]=[目标值] where [该行特征];

删除表中某行数据:
delete from [表名] where [该行特征];
delete from [表名];--删空整个表

6.要注意随时对数据库进行清理、收回磁盘空间并更新统计信息,使用下面的命令就搞定!

vaccumdb -d sales -z

-a 对所有的数据库操作

-z 保证不断地删除失效的行,节约磁盘空间,将统计信息更新为最近的状态

7.PostgreSQL用户认证

PostgreSQL数据目录中的pg_hba.conf的作用就是用户认证,可以在/var/lib/pgsql/data中找到。

有以下几个例子可以看看:

(1)允许在本机上的任何身份连接任何数据库

TYPE DATABASE USER IP-ADDRESS IP-MASK METHOD

local all all trust(无条件进行连接)

(2)允许IP地址为192.168.1.x的任何主机与数据库sales连接

TYPE DATABASE USER IP-ADDRESS IP-MASK METHOD

host sales all 192.168.1.0 255.255.255.0 ident sameuser(表明任何操作系统用户都能够以同名数据库用户进行连接)

8.看了那么多,来一个完整的创建PostgreSQL数据库用户的示例吧

(1)进入PostgreSQL高级用户

(2)启用客户端程序,并进入template1数据库

psql template1

(3)创建用户

template1=# CREATE USER hellen WITH ENCRYPED PASSWORD'zhenzhen'

(4)因为设置了密码,所以要编辑pg_hba.conf,使用户和配置文件同步。

在原有记录上面添加md5

local all hellen md5

(4)使用新用户登录数据库

template1=# \q

psql -U hellen -d template1

PS:在一个数据库中如果要切换用户,要使用如下命令:

template1=# \!psql -U tk -d template1

9.设定用户特定的权限

还是要用例子来说明:

创建一个用户组:

sales=# CREATE GROUP sale;

添加几个用户进入该组

sales=# ALTER GROUP sale ADD USER sale1,sale2,sale3;

授予用户级sale针对表employee和procts的SELECT权限

sales=# GRANT SELECT ON employee,procts TO GROUP sale;

在sale中将用户user2删除

sales=# ALTER GROP sale DROP USER sale2;

10.备份数据库

可以使用pg_mp和pg_mpall来完成。比如备份sales数据库:

pg_mp sales>/home/tk/pgsql/backup/1.bak

8. Postgresql psql脚本执行命令该怎么写

主要就是把除了template0和template1外的数据库全部mp到指定目录并打包使用前把BACKUPDIR修改至你自己的备份目录一般来说你不用修改DUMPCMD,除非你的PostgreSQL安装时的prefix指定到了其他地方,又或者你想加上其他的pg_mp参数可以放在c

阅读全文

与postgresql命令操作相关的资料

热点内容
手机上怎么通过邮箱发送文件夹 浏览:537
项目经理加密锁怎么登录 浏览:593
说编译 浏览:726
android蓝牙自动断开 浏览:779
怎么用手机制作加密的门禁卡 浏览:78
哪个比特币app好 浏览:272
php经典实例pdf 浏览:343
施耐德编程电缆制作 浏览:289
windowsc解析命令行参数 浏览:812
酒店预订app哪个好便宜 浏览:161
全世界第一编译器 浏览:538
在家学编程的视频 浏览:901
商务洽谈视频程序员 浏览:497
macbook文件夹压缩 浏览:555
体脂秤用哪个app 浏览:717
删除压缩文件密码 浏览:207
头部券商有算法岗 浏览:285
单片机自带编译器 浏览:300
单片机课程设计软件流程图 浏览:393
怎样把文件夹名字改成可见 浏览:172