如何从Qt应用程序中检查当前PostgreSQL用户的角色?
我有一些基于Qt库和QPSQL驱动程序的应用程序如何从Qt应用程序中检查当前PostgreSQL用户的角色?,qt,postgresql,database-design,permissions,Qt,Postgresql,Database Design,Permissions,我有一些基于Qt库和QPSQL驱动程序的应用程序 在PostreSQL中定义了几个用户角色(例如:管理员、操作员、用户)。我的应用程序在指定用户下创建到postgres服务器的连接。如何检查用户角色?您可以通过以下查询检查PostgreSQL用户权限: SELECT * FROM pg_roles; 意思是,session\u user显示您连接的角色,current\u user显示您当前使用的角色,例如在调用SET role some\u other\u role之后为了完整起见,如果您
在PostreSQL中定义了几个用户角色(例如:管理员、操作员、用户)。我的应用程序在指定用户下创建到postgres服务器的连接。如何检查用户角色?您可以通过以下查询检查PostgreSQL用户权限:
SELECT * FROM pg_roles;
意思是,
session\u user
显示您连接的角色,current\u user
显示您当前使用的角色,例如在调用SET role some\u other\u role之后
为了完整起见,如果您想从具有安全定义器的函数中了解设置的角色,请使用当前设置(“角色”)
SELECT current_user; -- user name of current execution context
SELECT session_user; -- session user name