我想为在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/

10-08 23:07