Sql 从外部表中选择时出错

Sql 从外部表中选择时出错,sql,oracle,oracle11g,Sql,Oracle,Oracle11g,我是Oracle的新手,正在尝试创建一个类别表。表格创建精细,修改精细: CREATE TABLE CATAGORIES ( Code VARCHAR2(10) NOT NULL, CategoryName VARCHAR2(250), Active VARCHAR2(1)) / ALTER TABLE CATAGORIES ADD CONSTRAINT PK_CATAGORIES PRIMARY KEY(CODE) / 但在插入时发生了以下错误: INSERT INTO CATAGORIE

我是Oracle的新手,正在尝试创建一个
类别表
。表格创建精细,修改精细:

CREATE TABLE CATAGORIES
( Code VARCHAR2(10) NOT NULL,
CategoryName VARCHAR2(250),
Active  VARCHAR2(1))
/
ALTER TABLE CATAGORIES ADD CONSTRAINT PK_CATAGORIES PRIMARY KEY(CODE)
/
但在插入时发生了以下错误:

INSERT INTO CATAGORIES(Code,CategoryName,Active)
select LPAD(ROWNUM,5,'0') AS Code, Category,'Y'
from
(
SELECT count(Product),Replace(Category,'"','') as Category from TEMPDATA_EXT
Where Category!='Category'
group by Category
)



SQL> INSERT INTO CATAGORIES(Code,CategoryName,Active)
  2  select LPAD(ROWNUM,5,'0') AS Code, Category,'Y'
  3  from
  4  (
  5  SELECT count(Product),Replace(Category,'"','') as Category from TEMPDATA_EXT
  6  Where Category!='Category'
  7  group by Category
  8  )
  9  /
INSERT INTO CATAGORIES(Code,CategoryName,Active)
*
ERROR at line 1:
ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-00554: error encountered while parsing access parameters
KUP-01005: syntax error: found "skip": expecting one of: "column, enclosed, (,
ltrim, lrtrim, ldrtrim, missing, notrim, optionally, rtrim, reject"
KUP-01007: at line 3 column 4

此错误表示外部表有问题

ORA-29913:执行ODCIEXTTABLEOPEN时出错

因此,我们可以猜测INSERT语句中引用的
TEMPDATA\u EXT
是一个外部表。因此,问题不在于
类别
表,而在于您从中选择的表

可能有以下几种情况:

  • 操作系统目录或数据库目录对象的权限可能有问题
  • 您试图从中加载的数据文件的内容可能有问题

  • 外部表应该指定了日志文件和错误文件。这些将写入OS目录。你的第一个行动应该是看看它们。使用。要查找操作系统目录,您需要与之交叉引用。

    这里的大多数人想要格式化的文本,而不是图像(或图像链接)。请解释您试图执行的操作以及错误是什么。你的链接不起作用(这是大多数人不喜欢问题中的链接的原因之一),在发布问题之前,请先查看一下。另外,您的表是否实际命名为
    类别
    ?因为那不是一个词。从语法上讲,名字是什么并不重要,只要它实际上是。我只是觉得奇怪,一个拼写错误的单词就是你的表名<代码>类别是您实际拼写单词的方式。