ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
        psql是PostgreSQL的交互式终端,可以通过psql工具交互式的键入查询。 **命令格式:** psql [option...] [dbname[username]] > **Input and output options:** > * **-a, --echo-all** :显示脚本中的所有输入参数,这等效于把变量`ECHO`设置为`all` > * **-b, --echo-errors** :把失败的 SQL 命令打印到标准错误输出。这等效于把变量`ECHO`设置为`errors` > * **-e, --echo-queries** :把发送到服务器的所有 SQL 命令复制到标准输出。这等效于把变量`ECHO`设置为`queries` > * **-E, --echo-hidden** :回显`\d`以及其他反斜线命令生成的实际查询。可以用它来学习psql的内部操作。这等效于把变量`ECHO_HIDDEN`设置为on > * **-L, --log-file=FILENAME**:将会话日志发送到文件 > * **-n, --no-readline**:不使用Readline做行编辑并且不使用命令历史 > * **-o, --output=FILENAME** :将查询结果发送到文件 > * **-q, --quiet** :不输出任何信息方式来运行 > * **-s, --single-step** :运行在单步模式中。这意味着在每个命令被发送给服务器之前都会提示用户一个可以取消执行的选项。使用这个选项可以调试脚本 > * **-S, --single-line** :运行在单行模式中,其中新行会终止一个 SQL 命令,就像分号的作用一样。 > > **Output format options:** > * **-A, --no-align** :切换到非对齐输出模式(默认输出模式是`对齐`的)。这等效于`\pset format unaligned` > * --csv :切换到CSV(逗号分隔值)输出模式。 这相当于`\pset format csv` > * **-F, --field-separator=STRING**:未对齐输出的字段分隔符(默认值:“|”) > * **-H, --html** :HTML表格输出模式 > * **-P, --pset=VAR[=ARG]** :以`\pset`的形式指定打印选项。注意,这里你必须用一个等号而不是空格来分隔名称和值。例如,要设置输出格式为LaTeX,应该写成`-P format=latex` > * **-R, --record-separator=STRING**:未对齐输出的记录分隔符(默认值:换行) > * **-t, --tuples-only** :关闭打印列名和结果行计数页脚等。这等效于`\t`或者`\pset tuples_only`命令 > * **-T, --table-attr=TEXT**:指定要替换HTML`table`标签的选项。详见`\pset tableattr` > * **-x, --expanded** :打开扩展表格式模式。这等效于`\x`或者`\pset expanded`命令 > * **-z, --field-separator-zero**:设置非对齐输出的域分隔符为零字节。这等效于`\pset fieldsep_zero` > * **-0, --record-separator-zero**:设置非对齐输出的记录分隔符为零字节。例如,这对与`xargs -0`配合有关。这等效于`\pset recordsep_zero`。 > > **General options:** > * **-c, --command=COMMAND** :指定psql执行一个给定的命令字符串*`command`*。这个选项可以重复多次并且以任何顺序与`-f`选项组合在一起。当`-c`或者`-f`被指定时,psql不会从标准输入读取命令,直到它处理完序列中所有的`-c`和`-f`选项之后终止 > * **-d, --dbname=DBNAME**:指定要连接的数据库名,默认是postgres > * **-f, --file=FILENAME**:从文件中读取sql命令执行 > * **-l, --list**:列出所有可用的数据库 > * **-v, --set=, --variable=NAME=VALUE**:执行一次变量赋值,和`\set`元命令相似。注意你必须在命令行上用等号分隔名字和值(如果有)。要重置一个变量,去掉等号就行。要把一个变量置为空值,使用等号但是去掉值。 > * **-V, --version**:输出pgsql版本 > * **-X, --no-psqlrc** :不读取启动文件(要么是系统范围的`psqlrc`文件,要么是用户的`~/.psqlrc`文件) > * **-1 ("one"), --single-transaction**:作为单个事务执行,这个选项只能被用于与一个或者多个`-c`以及/或者`-f`选项组合。它会让psql在第一个上述选项之前发出一条`BEGIN`命令并且在最后一个上述选项之后发出一条`COMMIT`命令,这样就把所有的命令都包裹在一个事务中。 > * **-?, --help[=options]** :显示有关psql的帮助并且退出 > * --help=commands :列出反斜杠命令 > * --help=variables:列出特殊变量 > > **Connection options:** > * **-h, --host=HOSTNAME**:指定运行服务器的机器的主机名 > * **-p, --port=PORT**:指定 数据库运行端口,默认是5432 > * **-U, --username=USERNAME**: 指定数据库用户名,默认是postgres > * **-w, --no-password**:不提示输入密码 > * **-W, --password** :强制密码提示 | 使用实例 | 解析 | | --- | --- | | psql -h localhost -p 5432 test postgres | 指定主机名、端口、数据库名和用户名进入该数据库 |