云数据库 GaussDB-执行动态非查询语句:示例

时间:2025-01-26 10:39:38

示例

 1 2 3 4 5 6 7 8 9101112131415161718192021222324252627282930313233
--创建表openGauss=# CREATE TABLE sections_t1(   section       NUMBER(4) ,   section_name  VARCHAR2(30),   manager_id    NUMBER(6),   place_id      NUMBER(4) );--声明变量openGauss=# DECLARE    section       NUMBER(4) := 280;    section_name  VARCHAR2(30) := 'Info support';    manager_id    NUMBER(6) := 103;   place_id      NUMBER(4) := 1400;   new_colname   VARCHAR2(10) := 'sec_name';BEGIN --执行查询    EXECUTE IMMEDIATE 'insert into sections_t1 values(:1, :2, :3, :4)'        USING section, section_name, manager_id,place_id; --执行查询(重复占位符)    EXECUTE IMMEDIATE 'insert into sections_t1 values(:1, :2, :3, :1)'        USING section, section_name, manager_id; --执行ALTER语句(建议采用“||”拼接数据库对象构造DDL语句)    EXECUTE IMMEDIATE 'alter table sections_t1 rename section_name to ' || new_colname;END; /--查询数据openGauss=# SELECT * FROM sections_t1;--删除表openGauss=# DROP TABLE sections_t1;
support.huaweicloud.com/centralized-devg-v2-gaussdb/gaussdb_42_0572.html