postgresql 常用命令汇总 (20210427)

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 17:44   2156   0

命令行

\l : 显示数据库
\du : 显示用户列表
\conninfo  : 显示现在的连接、数据库、用户名,或者用 【SELECT current_database();】
\c 数据库名 : 切换到某数据库
\d 数据表名 : 显示数据表的结构和数据类型

创建新的用户

CREATE USER 用户名 WITH PASSWORD '密码';
ALTER USER 用户名WITH SUPERUSER CREATEDB CREATEROLE;
ALTER ROLE 用户名 SET client_encoding TO 'utf8';
ALTER ROLE 用户名 SET default_transaction_isolation TO 'read committed';
ALTER ROLE 用户名 SET timezone TO 'UTC';

创建新的数据库

CREATE DATABASE 数据库名 OWNER 用户名;
GRANT ALL PRIVILEGES ON DATABASE 数据库名TO 用户名;

更改数据库 owner 和 权限主

ALTER DATABASE uncomtrade OWNER TO uncomtrade;
GRANT ALL PRIVILEGES ON DATABASE uncomtrade TO uncomtrade;

删除数据库

DROP DATABASE IF EXISTS database_name;

创建新的数据表

CREATE TABLE IF NOT EXISTS comtrade_annual (
column1 datatype(length) column_contraint,
column2 datatype(length) column_contraint,
column3 datatype(length) column_contraint,
table_constraints
);

举例如下:

CREATE TABLE IF NOT EXISTS trade_annual (
year SMALLINT NOT NULL,
reporter_code VARCHAR ( 10 ) NOT NULL,
reporter_name VARCHAR ( 50 ) NOT NULL,
partner_code VARCHAR ( 10 ) NOT NULL,
partner_name VARCHAR ( 50 ) NOT NULL,
hs_code VARCHAR ( 10 ) NOT NULL,
hs_desc VARCHAR ( 100 ) NOT NULL,
num_item SMALLINT NOT NULL,
trade_quantity INT NOT NULL,
net_weight real NOT NULL,
trade_value real NOT NULL
);

在同一个数据库中将一个数据表数据插入到另一个数据表中

INSERT INTO trade_annual_china(year ,trade_flow ,reporter_code ,partner_code ,hs_code ,trade_quantity ,net_weight ,trade_value )
SELECT year ,trade_flow ,reporter_code ,partner_code ,hs_code ,trade_quantity ,net_weight ,trade_value
FROM trade_annual
where not (partner_code = '4' and year = 2002);

上面的例子中,将 trade_annual 中的数据复制到 trade_annual_china 数据表中

将数据表输出成有header的csv文件(psql 命令行中)

\copy trade_annual_china to '/home/scrapy/uncomtrade/uncomtrade_China/trade_annual_china.csv' csv header

上面的命令将 trade_annual_china 数据表输出到 /home/scrapy/uncomtrade/uncomtrade_China/trade_annual_china.csv 文件中,并且带 header,csv格式

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP