oracle - 将 Select 查询的结果获取到变量中并将其作为列值插入到另一个表中

标签 oracle plsql toad

DECLARE count NUMBER;

SELECT max(to_number(param_code))+1 INTO count from abc where interface_code='PQR' ;

INSERT INTO abc
( INTERFACE_CODE
, PARAM_CODE
, DSCR
, PARAM_CHAR
, PARAM_NUMBER
, PARAM_DATE
, TRGA_CODE
)
VALUES
(  'PQR'
,   count 
,   'xyz'
,   ''     
,  ''        
,   ''         
,   '*'
)

我想在 Oracle 中将这 3 条语句作为脚本执行。 但这给了我错误。

请帮忙

最佳答案

DECLARE
  MY_COUNT NUMBER;
BEGIN
  SELECT MAX(to_number(param_code))+1
  INTO MY_COUNT
  FROM abc
  WHERE interface_code='PQR' ;

  INSERT
  INTO abc
    (
      INTERFACE_CODE ,
      PARAM_CODE ,
      DSCR ,
      PARAM_CHAR ,
      PARAM_NUMBER ,
      PARAM_DATE ,
      TRGA_CODE
    )
    VALUES
    (
      'PQR' ,
      MY_COUNT ,
      'xyz' ,
      '' ,
      '' ,
      '' ,
      '*'
    );
EXCEPTION
WHEN OTHERS THEN
 DBMS_OUTPUT.PUT_LINE(SQLERRM);
END;
/

关于oracle - 将 Select 查询的结果获取到变量中并将其作为列值插入到另一个表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23606375/

相关文章:

java - 我应该如何开始分析/优化我的 java 应用程序/oracle 数据库?

database - ORA-12154 : TNS:could not resolve the connect identifier specified using TOAD client

sql - 常量上的 NULL 值替换

oracle - 尝试安装go oracle驱动程序时出错(去获取gopkg.in/goracle.v2)

oracle - 如何在 Oracle 10g PL/SQL 中获取序列的 MINVALUE?

sql - 声明变量时PLSQL中的存储过程变量错误

sql - SQL连接中约束放置的性能差异

xml - 如何重命名 Oracle XMLTYPE 节点

sql - 如何正确处理查询约束中的日期

sql - Oracle中如何选择一个变量的值?