博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POSTGRESQL 创建表结构、修改字段、导入导出数据库(支持CSV)
阅读量:7059 次
发布时间:2019-06-28

本文共 2348 字,大约阅读时间需要 7 分钟。

这两个月经常使用postgresql,总结一些经常使用的语句:

--创建表CREATE TABLE customers (   customerid SERIAL primary key ,   companyname character varying,   contactname character varying,   phone character varying,   country character varying )--修改字段ALTER TABLE ticket_report_group_to_report alter column id type integer ;--添加字段alter table merchant add column thenow timestamp with time zone default now();--添加主键alter table ticket_report_group_to_report DROP COLUMN id RESTRICT, add COLUMN id serial PRIMARY KEY--窗口函数SELECT * FROM (SELECT rank() over(partition by c.source_id,c.wrapper_id order by id desc) as rank_num, * FROM mirror.cpc_ticket c) as a WHERE a.rank_num <= 1--修改defaultalter table merchant alter column comment set default '';--导出数据表pg_dump -h l-t**ta1.tkt.cn6.***.com -p 5432 -U pdata -d log_analysis -t wirelessapi_log_2013_09_02 -t wirelessapi_log_2013_09_03  > e:\wirelessapi_log_0902-03.sql

下面是导入、导出数据库:

# -h: PostgreSQL服务器的主机为192.168.149.137。    # -U: 登录用户为postgres。    # -t: 导出表名以test开头的数据表,如testtable。    # -a: 仅仅导出数据,不导出对象的schema信息。    # -f: 输出文件是当前目录下的my_dump.sql    # mydatabase是此次操作的目标数据库。    /> pg_dump -h 192.168.149.137 -U postgres -t test* -a -f ./my_dump.sql mydatabase    #-c: 先输出删除数据库对象的SQL命令,在输出创建数据库对象的SQL命令,这对于部署干净的初始系统或是搭建测试环境都非常方便。    /> pg_dump -h 192.168.220.136 -U postgres -c -f ./my_dump.sql mydatabase    #导出mydatabase数据库的信息。在通过psql命令导入时可以重新指定数据库,如:/> psql -d newdb -f my_dump.sql    /> pg_dump -h 192.168.220.136 -U postgres -f ./my_dump.sql mydatabase    #导出模式为my_schema和以test开头的数据库对象名,但是不包括my_schema.employee_log对象。    /> pg_dump -t 'my_schema.test*' -T my_schema.employee_log mydatabase > my_dump.sql    #导出east和west模式下的所有数据库对象。下面两个命令是等同的,只是后者使用了正则。    /> pg_dump -n 'east' -n 'west' mydatabase -f my_dump.sql    /> pg_dump -n '(east|west)' mydatabase -f my_dump.sql

如果仅仅导出数据表结构,需要添加 -s 参数,例如:

/opt/pg93/bin/pg_dump -h ${HOST} -U ${USER} -T -s -c -f ${PATH}${DATE}_log_analysis.sql log_analysis

如果需要导入数据文件,数据文件又比较大,那么可以这么执行

\i /home/qiu.li/git/ticket-crm/deploy/AllContactPersonInfo.txt

当然还有更方便的导出文件的命令copy

\copy (SELECT ip_format,ip,country, area, region, city, county FROM analytics_ip_data where area is not null) to '/tmp/ip/analytics_ip_data.csv';

从csv文件导入到数据库的方法

\COPY vender(sid,vender_id,vender_name,connector,created_by,created_dt,version,del_flg) from 'E:\Vendor.csv' WITH CSV  HEADER;

记住添加反斜线,否则会认为在服务器端执行,而找不到路径。

转载地址:http://jjyll.baihongyu.com/

你可能感兴趣的文章
《Greenplum企业应用实战》一3.5 索引
查看>>
转:ibatis动态sql
查看>>
Atom 简史:差点被 GitHub 创始人放弃
查看>>
匿名函数,结合闭包的写法,js对象的案例
查看>>
《机器人爱好者(第2辑)》——打造你自己的机器人底盘
查看>>
《Spark与Hadoop大数据分析》一一2.5 小结
查看>>
科技公司市值排行出炉,微软或超苹果成最值钱公司
查看>>
比特币漏洞修复时间推迟 凸显虚拟货币缺陷
查看>>
PHP 5 到 PHP 7 性能评测(含 JIT 版 PHP 8 对比)
查看>>
《Node.js区块链开发》一2.5 风险提示
查看>>
《从Excel到R 数据分析进阶指南》一2.7 查看列名称
查看>>
《Origin 9.0科技绘图与数据分析超级学习手册》一2.2 窗口类型
查看>>
Apache Kylin权威指南2.2 在Hive中准备数据
查看>>
《Visual Basic 2012入门经典》----1.2 新建项目
查看>>
《Python高手之路(第3版)》——1.5 Joshua Harlow访谈
查看>>
《精通Python网络爬虫:核心技术、框架与项目实战》——3.5 身份识别
查看>>
机器视觉:为什么追踪网球的技术不能用在足球和篮球上?
查看>>
《Linux/UNIX OpenLDAP实战指南》——1.8 自动化运维解决方案
查看>>
性能优化:使用ramlog将日志文件转移到内存中
查看>>
Android应用性能优化最佳实践.2.2 性能分析工具
查看>>