ORACLE创建一个存储过程(删除指定数据)

2025-03-24 17:47:11
推荐回答(4个)
回答1:

sql_dl='delete from report_data t where t.address in ('广东省')'

这行双重单引号,你不觉得有问题吗?需要转义一下。

还有个问题,你的这条sql明明可以不用in的,是还有别的省份没写进来吗?如果没有别的省份,建议使用=而不要用in,因为in与=的性能差距可是很大的,数据量越大,性能差距越明显。

回答2:

CREATE OR REPLACE PROCEDURE DELETE_NEW_REPORT_DATA AS
  SQL_DL VARCHAR2(200); --;忘记了
BEGIN
  SQL_DL = 'delete from report_data t where t.address in ('' 广东省 '')' ;--;忘记了 ''''
  EXECUTE IMMEDIATE SQL_DL;
END;

回答3:

MySQL教程4 MySQL8运算符、函数、存储过程及新增数据类型 17.之创建带有IN和OUT参数的存储过程 学习猿地

回答4:

广东省那行,最后是不是少个分号?