Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何在oracle中向映射中插入值?_Sql_Oracle_Map - Fatal编程技术网

Sql 如何在oracle中向映射中插入值?

Sql 如何在oracle中向映射中插入值?,sql,oracle,map,Sql,Oracle,Map,如何在地图中插入值 CREATE OR REPLACE PROCEDURE ZC_FILL_WNIOSKI IS TYPE MAP_ARRAY IS TABLE OF NUMBER INDEX BY VARCHAR2(30); WNIOSKI_MAP MAP_ARRAY; BEGIN INSERT INTO WNIOSKI_MAP SELECT ID_WNIOSEK_ORG, ID_WNIOSEK FROM ZC_WNIOSKI; ... 当前版本显示以下错误:

如何在地图中插入值

CREATE OR REPLACE PROCEDURE ZC_FILL_WNIOSKI IS
  TYPE MAP_ARRAY IS TABLE OF NUMBER INDEX BY VARCHAR2(30);
  WNIOSKI_MAP MAP_ARRAY;
  BEGIN

  INSERT INTO WNIOSKI_MAP
     SELECT ID_WNIOSEK_ORG, ID_WNIOSEK FROM ZC_WNIOSKI;
  ...
当前版本显示以下错误:

PL/SQL: ORA-00942 in line with INSERT.

您不会像这样将
插入到PL/SQL集合中

您可以将表中的
批量收集到集合中,但只能从表中选择一列。假设您的目的是选择键和值,您可以执行以下操作(假设我猜到了哪列是字符键,哪列是数值)


您不会像这样将
插入到PL/SQL集合中

您可以将表中的
批量收集到集合中,但只能从表中选择一列。假设您的目的是选择键和值,您可以执行以下操作(假设我猜到了哪列是字符键,哪列是数值)


INSERT
语法看起来不错。虽然
BEGIN
语句看起来多余(=错误),但是
INSERT
语法看起来很好。尽管
BEGIN
语句看起来多余(=错误)。它正是我想要的:)。它正是我想要的:)。
FOR i IN (SELECT ID_WNIOSEK_ORG, ID_WNIOSEK FROM ZC_WNIOSKI)
LOOP
  WNIOSKI_MAP( i.ID_WNIOSEK_ORG ) := ID_WNIOSEK;
END LOOP;