PREPARE语句
预编译需要执行的SQL语句。
语法格式
预编译SQL语句PREPARE
sqlPrepareStmt::= PREPARE ColId AS sql_stmt
释放预编译的SQL语句DEALLOCATE
sqlDeallocateStmt::= DEALLOCATE ColId
参数说明
ColId
:定义的预编译名称。sql_stmt
:预编译的执行SQL语句。
说明:
- PREPARE预编译支持DML语句。
- PREPARE预编译支持DDL语句。支持的对象范围目前仅包括表/视图,其他对象PREPARE只支持DROP操作。
- 建议在使用预编译语句完成后释放预编译语句,减少资源浪费,可通过DEALLOCATE语句释放预编译语句,也可通过关闭当前会话自动释放。
示例
使用PREPARE语句来准备和执行DDL和DML语句,创建表并插入数据。
sql
-- 预编译DDL语句。
PREPARE pre_1 AS CREATE TABLE pre_tab(col1 INT,col2 VARCHAR);
-- 执行pre_1
?pre_1
-- 预编译DML语句。
PREPARE pre_2 AS INSERT INTO pre_tab values(1,'VAL1');
-- 执行pre_2
?pre_2
SELECT * FROM pre_tab;
COL1 | COL2 |
------------------------------------------------------------------------------
1 | VAL1|