温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

postgresql怎么导入数据

发布时间:2026-09-07 03:28:39 来源:亿速云 阅读:95 作者:小樊 栏目:数据库

在 PostgreSQL 中导入数据有多种方式,下面按常见场景给你总结,直接照着用就行。


一、使用 psql 导入 SQL 文件(最常用)

1️⃣ 导入 .sql 文件

psql -U 用户名 -d 数据库名 -f 文件.sql

示例:

psql -U postgres -d testdb -f data.sql

如果是远程数据库:

psql -h 192.168.1.100 -U postgres -d testdb -f data.sql

二、导入 CSV 文件(非常常见)

方法 1:使用 COPY(推荐,速度快)

COPY 表名 FROM '/path/to/file.csv' WITH (FORMAT csv, HEADER true);

示例:

COPY users FROM '/tmp/users.csv' WITH (FORMAT csv, HEADER true);

⚠️ 注意:

  • 文件路径必须是 PostgreSQL 服务器能访问的路径
  • 用户要有相应权限

方法 2:使用 \copy(客户端导入,最安全)

\copy 表名 FROM '/本地路径/file.csv' WITH (FORMAT csv, HEADER true);

示例(在 psql 中执行):

\copy users FROM 'C:/data/users.csv' WITH (FORMAT csv, HEADER true);

✅ 适合:

  • 本地文件
  • 没有服务器权限

三、从其他数据库导入

1️⃣ MySQL → PostgreSQL

常用工具:

  • pgloader(强烈推荐)
pgloader mysql://user:pwd@localhost/mydb postgresql://user:pwd@localhost/pgdb

2️⃣ 使用 pg_dump + psql 迁移

pg_dump -U user -d olddb | ppsql -U user -d newdb

四、使用 GUI 工具导入

✅ pgAdmin

  1. 右键数据库 / 表
  2. 选择 Import/Export
  3. 选择 CSV 文件
  4. 设置分隔符、编码、表头

五、常见坑提醒

✅ 字段数量要一致
✅ 编码问题(推荐 UTF-8)
✅ 日期格式要匹配
✅ 表要先存在(COPY 不会建表)


如果你能告诉我:

  • 数据格式(SQL / CSV / Excel)
  • 是否本地或服务器
  • PostgreSQL 版本

我可以给你更精确的命令。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手