PostgreSQL中current_user和current_user()的区别

今天看到网上有人在问在POSTGREsqlSelect current_user 可以执行成功,但是select current_user() 却会失败,这是为什么呢?

碰巧今天看到书上有一个小节,叫预定义变量的,里面列出了4 个。

aligputf8=# select current_date;

date

------------

2010-04-22

(1 row)

aligputf8=# select current_time;

timetz

--------------------

17:47:53.066679+08

aligputf8=# select current_timestamp;

Now

-------------------------------

2010-04-22 17:47:59.626851+08

aligputf8=# select current_user;

current_user

--------------

etl

(1 row)

下面加上括号试试

aligputf8=# select current_user();

ERROR: Syntax error at or near "(" --报错了 没有这个函数

LINE 1: select current_user();

^

aligputf8=# select Now(); --这是个函数

2010-04-22 17:49:40.125055+08

(1 row)

aligputf8=# select Now; --去掉括号就不行了

ERROR: column "Now" does not exist

LINE 1: select Now;

^

一类是函数,一类是预定义变量。个人理解哈。

相关文章

项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果...
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正...
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本...
wamp 环境 这个提示就是说你的版本低于10了。 先打印ph...
psycopg2.OperationalError: SSL SYSCALL error: EOF detect...