You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何检索Firebird数据库连接的所有上下文变量

如何列出Firebird所有上下文变量(含SYSTEM上下文)

Firebird没有内置的系统函数或系统表可以直接一次性列出所有上下文变量(包括SYSTEM上下文),但可以通过以下方式获取完整的变量信息:

1. 手动枚举已知的SYSTEM上下文变量

SYSTEM上下文的变量是Firebird预定义的固定集合,你可以通过RDB$GET_CONTEXT函数逐一查询这些变量,常见的SYSTEM变量包括:

  • RDB$GET_CONTEXT('SYSTEM', 'DB_NAME'):当前数据库名称
  • RDB$GET_CONTEXT('SYSTEM', 'USER'):当前连接的用户
  • RDB$GET_CONTEXT('SYSTEM', 'SESSION_ID'):当前会话ID
  • RDB$GET_CONTEXT('SYSTEM', 'CLIENT_ADDRESS'):客户端网络地址
  • RDB$GET_CONTEXT('SYSTEM', 'CLIENT_PID'):客户端进程ID
  • RDB$GET_CONTEXT('SYSTEM', 'SERVER_PID'):服务器进程ID
  • RDB$GET_CONTEXT('SYSTEM', 'TIMESTAMP'):当前数据库服务器时间戳

所有SYSTEM上下文变量的完整列表可参考Firebird官方文档的相关定义。

2. 合并用户上下文变量与SYSTEM变量

  • 用户自定义的上下文变量可以通过监控表MON$CONTEXT_VARIABLES查询:
    SELECT MON$VARIABLE_NAME, MON$VARIABLE_VALUE 
    FROM MON$CONTEXT_VARIABLES
    
    管理员权限可以查看所有连接的用户上下文变量,普通用户仅能查看当前会话的。
  • 将上述查询得到的用户变量,与枚举的SYSTEM变量合并,即可得到完整的上下文变量集合。

内容的提问来源于stack exchange,提问作者Mark Rotteveel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 23:25:02