达梦数据库创建外部表
1.外部表定义
外部表,是指不存在于数据库中的表。通过向达梦提供描述外部的元数据,可以把一个操作系统文件当成一个只读的数据库表,就这些数据存储在一个普通数据库表中一样来进行访问。外部表的数据存储在操作系统中,是操作系统文件,建立外部表的时候,不会产生段,页簇等存储结构,只有与表相关的定义放在数据字典中。在数据库中不能对外部表的内容进行修改,不能对外部表建立主键,索引,外键。不需要将外部表的数据载入到数据库中来,通过sql解码器来访问外部表。
2.如何建立外部表
2.1 方式一
(1)准备数据文件emp.txt,数据格式如下
1,oralce,2022-01-01
2,mysql,2021-09-30
3,dameng,2020-08-09
4,sqlserver,2022-10-15
(2)准备控制文件emp.ctl,内容如下
LOAD DATA
INFILE '/opt/emp.txt' -------数据加载路径
INTO TABLE DMTEST.EMP -------插入哪张表
FIELDS ',' -------代表以什么符号来分割数据
(3)创建外部表语句
create EXTERNAL table DMTEST.EMP (c1 int,c2 varchar2(50),c3 DATE ) FROM '/opt/emp.ctl'
(4)验证外部表
SELECT * FROM DMTEST.EMP;
2.2方式二
(1)准备数据文件emp.txt,数据格式如下
1,oralce,2022-01-01,
2,mysql,2021-09-30,
3,dameng,2020-08-09,
4,sqlserver,2022-10-15,
(2)创建外部表
create EXTERNAL table DMTEST.EMP (c1 int,c2 varchar2(50),c3 DATE ) from datafile '/opt/emp.txt' parms(fields delimited by ',');
(3)验证外部表
SELECT * FROM DMTEST.EMP;