之前我们将了理论考试的注意事项:
达梦 DM8 DCP 备考笔记(1) — 理论考试 说明
https://www.cndba.cn/dave/article/108708
达梦 DM8 DCP 备考笔记(2) — 分区表操作
https://www.cndba.cn/dave/article/108710
本篇我们来看下达梦数据库中的外部表。
1 外部表描述
外部表,是指不存在于数据库中的表。通过向达梦提供描述外部表的元数据,可以把一个操作系统文件当成一个只读的数据库表,就像这些数据存储在一个普通数据库表中一样来进行访问。
更多内容参考《DM8_SQL语言使用手册》中的“3.6.1.2 定义外部表” 小节。
2 示例1
创建操作系统文件:
[dave@www.cndba.cn data]$ pwd
/dm/dmdbms/data
[dave@www.cndba.cn data]$ cat t1.txt
1,AA
2,BB
3,CC
4,DD
5,EE
[dave@www.cndba.cn data]$
创建控制文件:
[dave@www.cndba.cn data]# cat t1.ctl
LOAD DATA
INFILE '/dm/dmdbms/data/t1.txt'
INTO TABLE CNDBA.T10
FIELDS ','
[dave@www.cndba.cn data]#
创建外部表:
SQL> create external table CNDBA.T10(id int, name varchar(20)) from '/dm/dmdbms/data/t1.ctl';
executed successfully
used time: 4.158(ms). Execute id is 55626.
SQL>
SQL> select * from cndba.t10;
LINEID ID NAME
---------- ----------- ----
1 1 AA
2 2 BB
3 3 CC
4 4 DD
5 5 EE
used time: 6.542(ms). Execute id is 55634.
SQL>
3 示例2
[dave@www.cndba.cn data]# pwd
/dm/dmdbms/data
[dave@www.cndba.cn data]# cat t11.txt
1|2|3
4|5|6
7|8|9
SQL> create external table CNDBA.T11(c1 int, c2 int, c3 int) from datafile '/dm/dmdbms/data/t11.txt' parms(fields delimited by '|');
executed successfully
used time: 4.319(ms). Execute id is 55636.
SQL>
SQL> select * from t11;
LINEID C1 C2 C3
---------- ----------- ----------- -----------
1 1 2 3
2 4 5 6
3 7 8 9
used time: 6.020(ms). Execute id is 55637.
SQL>
版权声明:本文为博主原创文章,未经博主允许不得转载。