如何在DB2中执行SQL字符串

如何在DB2中执行SQL字符串,db2,Db2,如何在DB2中执行SQL字符串语句?我正在使用IBM Data Studio。您遇到了什么困难 可能有很多方法可以做到这一点。这里有一个: 文件->新建->其他->SQL或XQuery脚本 您可能需要创建项目或定义数据库连接 输入SQL代码 脚本->运行脚本 结果将显示在屏幕底部。您的意思是执行动态SQL字符串吗?比如: DECLARE stmt VARCHAR(1000); DECLARE my_table VARCHAR(50); SET my_table = 'DEPT_'||deptNu

如何在DB2中执行SQL字符串语句?我正在使用IBM Data Studio。

您遇到了什么困难

可能有很多方法可以做到这一点。这里有一个:

文件->新建->其他->SQL或XQuery脚本

您可能需要创建项目或定义数据库连接

输入SQL代码

脚本->运行脚本


结果将显示在屏幕底部。

您的意思是执行动态SQL字符串吗?比如:

DECLARE stmt VARCHAR(1000);
DECLARE my_table VARCHAR(50);
SET my_table = 'DEPT_'||deptNumber;
SET stmt = 'SELECT * FROM '||my_table;
PREPARE s1 FROM stmt;
EXECUTE s1;

不过,您只能在存储过程中执行此操作。在本例中,定义为
CREATE过程GetDeptInfo(deptnumbervarchar(5))
。阅读db2文档中的
EXECUTE
PREPARE
经过几天的研究,我发现了如何在db2上编写和运行动态SQL:

create or replace procedure Search ()

    BEGIN

       DECLARE v_dynamicSql varchar(2000);
       SET v_dynamicSql = 'INSERT INTO dictonary(name) values(' || 'dynamicSQL in db2' ||')';

       EXECUTE IMMEDIATE v_dynamicSql;

    END;

希望能帮助他人。

在控制中心,右键单击数据库,您将看到“查询”。点击它,你就可以开始了