PostgreSQL如何用psql运行SQL文件
作者:雨临Lewis
文章介绍了两种运行预写好的SQL文件的方式:首先连接数据库后执行,或者直接通过psql命令执行,需要注意的是,文件路径在Linux系统中应使用斜杠/,而不是反斜杠\,否则会报Permission denied错误
PostgreSQL用psql运行SQL文件
对于预先写好的SQL文件,比如/home/user1/updateMyData.sql
, 可以有两种方式来运行这个SQL文件。
方式一
连接db后执行SQL文件:
- 首先通过psql连接到对应的db:
psql -d db1 -U userA
- 接着输入密码,进入数据库后,输入:
\i /pathA/xxx.sql
这里有个问题:
- 如果你把SQL文件的路径里的路径分隔符写成了
\
,会报错说Permission denied
。 - 这里的文件路径必须使用Linux平台下的路径分隔符
/
,否则会报错。
方式二
直接通过psql命令执行SQL文件:
- 这种方式无需先登录数据库,直接用一个命令就可以了:
psql -d db1 -U userA -f /pathA/xxx.sql
- 接着输入密码即可执行SQL文件到对应的db里。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。