DB2中的EXECUTE IMMEDIATE和EXECUTE WITH PREPARE有什么区别?
EXECUTEIMMEDIATE和EXECUTEPREPARE是动态SQL的形式。在立即执行EXECUTE的情况下,我们可以在主机变量中给出SQL语句,然后在EXECUTEIMMEDIATE中传递此主机变量。
下面的示例演示了这些形式。
示例
01 WS-SQL-DECLARE 05 WS-SQL-LEN PIC S9(04) COMP. 05 WS-SQL-QUERY PIC X(70). MOVE +80 TO WS-SQL-LEN MOVE “UPDATE ORDERS SET ORDER_PAID = ‘YES’ WHERE ORDER_DATE = ‘14-08-2020’” TO WS-SQL-QUERY EXEC SQL EXECUTE IMMEDIATE :WS-SQL-DECLARE END-EXEC
如果是EXECUTEPREPARE,则首先准备SQL语句,然后执行。我们可以使用这种形式的动态SQL,如下所示。
示例
01 WS-SQL-DECLARE 05 WS-SQL-LEN PIC S9(04) COMP. 05 WS-SQL-QUERY PIC X(70). MOVE +80 TO WS-SQL-LEN MOVE “UPDATE ORDERS SET ORDER_PAID = ‘YES’ WHERE ORDER_DATE = ‘14-08-2020’” TO WS-SQL-QUERY EXEC SQL PREPARE RUNFORM FROM :WS-SQL-DECLARE END-EXEC EXEC SQL EXECUTE RUNFORM END-EXEC
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短