oracleid数据类型,oracle
今天使⽤Oracle提供的sqlldr将CSV⽂件导⼊到数据库中,因为表的列信息有字符类型也有数值类型,在写控制⽂件时也对于的加上了数据类型,控制⽂件如下:
load data
infile 'aa.csv'
into table student
fields terminated by ','
(
id number,
name varchar2(10)
)
表结构:
create table STUDENT
(
ID NUMBER,
NAME VARCHAR2(10)
)
结果运⾏时直接报错了,报错信息如下:
c:\>sqlldr scott/tiger l
SQL*Loader: Release 11.2.0.1.0 - Production on Mon Jul 28 22:35:27 2014
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
SQL*Loader-350: Syntax error at line 6.
decimal是整数数据类型Expecting "," or ")", found "number".
id number,
^
⼤概的意思是不识别,感觉很奇怪怎么识别不了number类型,查了下⽂档原来sqlldr有⾃⼰的数据类型,例如整数类型是INTEGER EXTERNAL,字符类型是CHAR
常见的数据类型:
CHAR  字符类型可以描述数据中的VARCHAR2 或 CHAR 列
DATE  ⽇期类型可以描述数据库的DATE列
INTEGER EXTERNAL 整数类型
FLOAT EXTERNAL 浮点类型
DECIMAL EXTERNAL ⼩数
修改控制⽂件:
load data
infile 'aa.csv'
into table student
fields terminated by ','
(
id INTEGER EXTERNAL,
name CHAR
)
重新执⾏⼀切OK了。
如果在服务器端执⾏,可以使⽤silent参数屏蔽输出的信息,执⾏完后可以直接看⽇志⽂件c:\>sqlldr scott/tiger l slient=all

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。