Oracle数据库中包含CLOB字段表的导出和导⼊1.表的导出和导⼊
因为oracle中存储⼤量数据的CLOB字段默认是不导出的,所以在导出时需要特别设置⼀下。
我使⽤DBVisualizer这个⼯具进⾏导出和导⼊。
软件版本:
DBVisualizer Pro 10.0.16
导出表
Connections ->(数据库名称)-> Schemas -> (⽤户名)-> Tables -> (表名)
⿏标右键-》Export Table ...
Settings选项设置
Output Format 选择 CSV
导出为SQL⽂件会有超过4000报错的情况,所以这⾥导出⽂件为CSV⽂件
Output Destination 选择 File 指定导出的⽂件路径
点击 Data Format Settings 按钮
Binary/BLOB 选择 Value
默认是不导出
CLOB 选择 Value
默认是不导出
Quote Text Value 选择 None
默认是双引号把值括起来,这样的在导⼊时会将双引号也导⼊,所以不对值加双引号
点击 Ok
点击 Export 导出完成,⽣成⼀个CSV⽂件
导⼊表
Connections ->(数据库名称)-> Schemas -> (⽤户名)-> Tables -> (表名)
⿏标右键-》Import
Next -> Next
这⾥需要注意⼀下:这⾥可以修改数据格式,⾃动识别的时候可能会将Number类型的识别为Boolean类型,导致导⼊报错,如果报错,则查看这⾥是否和数据库中格式⼀致,如果不⼀致的则进⾏修改:
Data -> Grid -> 点击数据类型进⾏修改
Next -> Next -> Import 导⼊完毕,查看结果,如果有错误则进⾏排查
导出为SQL⽂件会有超过4000报错的情况,所以这⾥导出⽂件为CSV⽂件。
2.CLOB类型字段的插⼊SQL如何写?
oracle会把插⼊的字符串作为 “字符串类型”处理,由于oracle有最⼤字符串限制(不超过4000个字符),所以会报错。使⽤PL/SQL进⾏插⼊,不需要进⾏字符串的分割
oracle选择数据库
语法如下:
DECLARE
⾃定义名称 CLOB :='⼤于4000的数据';
BEGIN
INSERT INTO表名称(...,字段名称,...) VALUES(...,⾃定义名称,...);
COMMIT;
END;
例如:test表中的bigdata字段类型为CLOB,则插⼊语句
DECLARE
bname CLOB :='clobdata';
BEGIN
INSERT INTO test(bigdata) VALUES(bname); COMMIT;
END;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论