这两个月经常使用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
--修改default
alter 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.。
# -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;

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

POSTGRESQL 创建表结构、修改字段、导入导出数据库(支持CSV)的更多相关文章

  1. oracle创建数据库表空间 用户 授权 导入 导出数据库

    windows下可以使用向导一步一步创建数据库,注意编码. windows连接到某一个数据库实例(不然会默认到一个实例下面):set ORACLE_SID=TEST --登录开始创建表空间及可以操作的 ...

  2. Oracle创建表、修改字段类型

    1.创建表 1.创建表 create table SCM_PER( --SCM_PER表名 ID ) primary key,--主键ID USERID ),--用户ID --Permission v ...

  3. sql 常用的语句(sql 创建表结构 修改列 清空表)

    1.创建表 create Table WorkItemHyperlink ( ID bigint primary key ,--主键 WorkItemID ,) not null,--其中identi ...

  4. sqlserver导入导出数据库结构及创建用户分配权限

    1.创建用户分配权限 https://www.cnblogs.com/jennyjiang-00/p/5803140.html 2.sqlserver2008导出表结构和表数据 导出表结构   htt ...

  5. Oracle数据库之创建表结构

    Oracle数据库之创建表结构 主键与外键 主键:关系型数据库中的一条记录中有若干个属性,若其中的某一个属性组(可以是一个属性,也可以是多个)能唯一标识一条记录,那么该属性组就是主键. 外键:关系型数 ...

  6. Entity Framework(三):使用特性(数据注解)创建表结构

    一.理解Code First及其约定和配置 传统设计应用的方式都是由下而上的,即我们习惯优先考虑数据库,然后使用这个以数据为中心的方法在数据之上构建应用程序.这种方法非常适合于数据密集的应用或者数据库 ...

  7. mysql——创建表、修改表、删除表(概念详细讲解)

    一.创建一个数据表 create table 表名 ( 列名1 数据类型1 [完整性约束条件], 列名2 数据类型2 [完整性约束条件], 列名3 数据类型3 [完整性约束条件], 列名4 数据类型4 ...

  8. DjangoORM创建表结构以及生成数据库结构

    1. ORM的两种 DB first: 创建表结构--根据表结构生成类-----根据类来操作数据库 Code first: 先写代码------再写类----执行命令(一个类生成一个表)当前主流的用法 ...

  9. mysql 导入导出数据库、数据表的方法

    mysql 导入导出数据库.数据表的方法. Linux操作系统中,均在控制台下操作.1,导入数据库:前提:数据库和数据表要存在(已经被创建)(1)将数据表 test_user.sql 导入到test ...

随机推荐

  1. [开源]Google code Android开源项目(一)

    [Android分享] [开源]Google code Android开源项目(一) [复制链接]     449122717 2 主题 2 好友 816 积分 No.4 中级开发者 升级  19.3 ...

  2. nginx网站攻击防护

    1.上上个月架构全部迁移上云以后,总的来说比较稳定,业务量也上来,可爱的坏人也来了,7X24小时不停恶意攻击我的网站,第一次收到报警是网站流入流量1分钟以内连续3次超过1000000bps,换算下1M ...

  3. 从Oracle迁移到MySQL的各种坑及自救方案

    当企业内部使用的数据库种类繁杂时,或者有需求更换数据库种类时,都可能会做很多数据迁移的工作.有些迁移很简单,有些迁移可能就会很复杂,大家有没有考虑过为了顺利完成复杂的数据库迁移任务,都需要考虑并解决哪 ...

  4. JAVA card 应用开发(二) 在项目添加APPLET

    在上篇博文中.<JAVA card 应用开发创建第一个APPLET>.介绍了一个项目从无到有. 那么.我们建立了这个项目后,仅仅有一个应用(一个可选AID),假设我希望这个项目能够有多个应 ...

  5. 详细解释如何通过Android自带的方式来实现图片的裁剪——原理分析+解决方案

    我们很多时候需要进行图片的裁剪,其实这个功能在android系统中已经有一套解决方案了,虽然界面和效果并不是很优秀但功能毫无疑问是完美实现了.至于,不用自带的方案怎么做自定义,这个就是后话了.本篇主要 ...

  6. Kendall Rank(肯德尔等级)相关系数

    1.简介在统计学中,肯德尔相关系数是以Maurice Kendall命名的,并经常用希腊字母τ(tau)表示其值.肯德尔相关系数是一个用来测量两个随机变量相关性的统计值.一个肯德尔检验是一个无参数假设 ...

  7. HTTP Error 502.5 – Process Failure

    https://www.cnblogs.com/lookerblue/p/7101641.html http://www.cnblogs.com/lookerblue/p/7102040.html h ...

  8. OA系统权限管理设计方案【转】

    l 不同职责的人员,对于系统操作的权限应该是不同的.优秀的业务系统,这是最基本的功能. l 可以对“组”进行权限分配.对于一个大企业的业务系统来说,如果要求管理员为其下员工逐一分配系统操作权限的话,是 ...

  9. [转载][HASS.IO] 【HASSOS安装】成功安装HASSOS 1.9(避开了大部分坑版)

    7月20日HA官方放出HASSOS说明时,我开始入坑HASSOS,经历了安装没流量.打开主页:8123没显示.HASS.IO边栏不显示.安装不了HASS.IO插件等问题之后,在8月6日总算避开了大坑进 ...

  10. css控制input标签

    逛到发现这个 个人感觉非常赞 下面是CSS样式 Js代码                           input { border:1px solid #B3D6EF; background: ...