在Oracle中创建表,然后使用select插入多个fors

时间:2015-03-16 13:33:08

标签: oracle plsql insert create-table

我正在使用Oracle 11G和Toad 10.6。我正在尝试创建一个表,然后从select语句中插入行,该语句将从1个主表(Product - 如下所示)中提取记录,以及在其余代码中连接的几个辅助表(我没有包含)过滤结果

create table mjhottemp 
(
CustID number (10),
CanvCD varchar2 (6),
CanvISS number (3)
);
COMMIT;
Insert into MJHOTTEMP
(custid, canvcd, canviss)
SELECT DISTINCT
   r.CUSTOMER_ID AS custid, r.CANVASS_CODE AS canvcd, r.CANVASS_ISSUE_NUM as canviss

FROM core.product r

当我运行时,我在“插入MJHOTTEMP”行

时出错
ORA-00942: table or view does not exist

我在架构中看到了表格。任何想法为什么这不起作用?

2 个答案:

答案 0 :(得分:0)

这通常是权限错误。验证您正在连接的用户是否已选择(至少)core.product表。

GRANT SELECT ON core.product TO'your_user';

我假设您没有使用自定义用户功能或从其他用户拥有的视图或过程中进行选择。在这种情况下,您可能需要添加

GRANT SELECT ON core.product TO 'your_user' WITH REFERENCES;

答案 1 :(得分:0)

错误消息关注此表:core.product