Postgresql 如何在postgres数据库中执行.sql文件
我正在使用postgres数据库与PostGIS和PGAdmin。我有许多不同大小的.sql文件,比如300MB、280MB等,要插入数据库。最好的方法是什么,即通过java代码或一些psql命令。我对java和postgres数据库也很陌生。请给我一些建议。只需将它放在命令行的Postgresql 如何在postgres数据库中执行.sql文件,postgresql,psql,Postgresql,Psql,我正在使用postgres数据库与PostGIS和PGAdmin。我有许多不同大小的.sql文件,比如300MB、280MB等,要插入数据库。最好的方法是什么,即通过java代码或一些psql命令。我对java和postgres数据库也很陌生。请给我一些建议。只需将它放在命令行的psql后面: psql example.sql psql将获取文件并将每一行运行到服务器 如果服务器未在您的计算机上运行,则需要指定计算机的主机名和登录服务器时使用的用户名: psql -h server.postg
psql
后面:
psql example.sql
psql
将获取文件并将每一行运行到服务器
如果服务器未在您的计算机上运行,则需要指定计算机的主机名和登录服务器时使用的用户名:
psql -h server.postgres.com -U username example.sql
要发送多个文件,只需列出所有文件:
psql example1.sql example2.sql example3.sql
使用
psql
命令行工具:
psql -f file_with_sql.sql
此命令逐行执行所有命令(文件包含BEGIN…END块时除外。在这种情况下,块中的命令在事务中执行)。要在事务中包装所有命令,请使用--单个事务开关:
psql --single-transaction -f file_with_sql.sql
有关更多选项:
psql --help
另一种方法是使用psql命令\i。比如说,
假设我们在路径~/sql/run.sql
$ cd ~/sql/
$ psql -h <host> -U <user> <database>
$cd~/sql/
$psql-h-U
=>
=>\i“run.sql”
完成看,我有非常大的文件,需要发送到另一台服务器。因此,通过psql需要很长时间。是否有直接从pgadmin执行的操作?请看下面的链接,这是在一个事务中执行整个sql文件,还是在文件中的每一行使用一个新事务?
<database> =>
<database> => \i 'run.sql'