我想为在firebird中的sql代码中使用的变量分配一个值。 MySQL代码将是:
SET @x = 1;
SELECT @x;
对应的火鸟代码是什么?
感谢帮助。
最佳答案
要在Firebird中定义用户定义的特定于会话的变量,可以使用rdb$set_context。
您的MySql示例的对应Firbird代码为:
select rdb$set_context('USER_SESSION', 'x', 1) from rdb$database
select rdb$get_context('USER_SESSION', 'x') from rdb$database
笔记:
1.)请注意,变量名称区分大小写。
2.)内部变量值是stored with datatype
VARCHAR(255)
,因此强制转换为VARCHAR(255)
!3.)变量的最大数量为1000。
4.)您不需要引用
rdb$database
:select rdb$get_context('USER_SESSION', 'x') from some_table_name
也会工作。
关于sql - Firebird:使用全局变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15559173/