KingbaseES blob 类型数据导入导出
KingbaseES兼容了oracle的blob数据类型。通常是用来保存二进制形式的大数据,也可以用来保存其他类型的数据。
下面来验证一下各种数据存储在数据库中形式。
建表
create table t1 (id number, file blob);
插入数据
insert into t1 values (1,''',\\as123哈哈');
insert into t1 values (2,blob_import('/home/kbc5/ksql.log'));
insert into t1 values (3,blob_import('/home/kbc5/tp.gif'));
查看数据
可以看出英文,数字,符号未做转换直接存入数据库中,中文,文件,图片转换为不可读内容存放在数据库中。
那是否有方法可以读取原本可读的数据内容呢?
可以通过
1.convert_from 函数将数据翻译为可读内容(图片除外)。
2.blob_export 函数将blob的内容导出到本地进行读取。
test=# select convert_from(file,'utf8') from t1 ;
错误: 无效的 "UTF8" 编码字节顺序: 0xff
test=# select id, convert_from(file,'utf8') from t1 where id <> 3;
id | convert_from
----+----------------------------------------
1 | ',\as123哈哈
2 | 错误: 语法错误 在 "5" 或附近的 +
| 第1行insert into t2values (5,'xarte');+
| ^ +
|
(2 行记录)
上面的结果可以看出图片无法被转换,而文本文件则会将具体内容转义出来。
test=# select blob_export(file,'/home/kbc5/dc1.gif') from t1 where id = 3;
blob_export
1
(1 行记录)
函数执行结果1表示成功。进入目录查看文件:
()
可以看到2个文件一样大。
test=# select blob_export(file,'/home/kbc5/dc2.txt') from t1 where id <> 3;
blob_export
1
1
(2 行记录)
进入目录看到只有一个dc2.txt文件,说明后面一行导出的文件会将前一行导出的文件覆盖。
所以使用该函数进行操作时1个blob段需要指定一个对应的文件。
KingbaseES blob 类型数据导入导出的更多相关文章
- ITTC数据挖掘平台介绍(五) 数据导入导出向导和报告生成
一. 前言 经过了一个多月的努力,软件系统又添加了不少新功能.这些功能包括非常实用的数据导入导出,对触摸进行优化的画布和画笔工具,以及对一些智能分析的报告生成模块等.进一步加强了平台系统级的功能. 马 ...
- Oracle数据导入导出
Oracle数据导入导出imp/exp 在oracle安装目录下有EXP.EXE与IMP.EXE这2个文件,他们分别被用来执行数据库的导入导出.所以Oracle数据导入导出imp/exp就相当与ora ...
- 关于 Oracle 的数据导入导出及 Sql Loader (sqlldr) 的用法
在 Oracle 数据库中,我们通常在不同数据库的表间记录进行复制或迁移时会用以下几种方法: 1. A 表的记录导出为一条条分号隔开的 insert 语句,然后执行插入到 B 表中2. 建立数据库间的 ...
- Winform开发框架之通用数据导入导出操作的事务性操作完善
1.通用数据导入导出操作模块回顾 在我的Winfrom开发框架里面,有一个通用的导入模块,它在默默处理这把规范的Excel数据导入到不同的对象表里面,一直用它来快速完成数据导入的工作.很早在随笔< ...
- SQL Server 之 在数据库之间进行数据导入导出
1.同一服务器上数据库之间进行数据导入导出 (1).使用 SELECT INTO 导出数据 在SQL Server中使用最广泛的就是通过SELECT INTO语句导出数据,SELECT INTO语句同 ...
- SQL SERVER 与ACCESS、EXCEL的数据导入导出转换
* 说明:复制表(只复制结构,源表名:a 新表名:b) select * into b from a where 1<>1 * 说明:拷贝表(拷贝数据,源表名:a 目标表名:b) ...
- Oracle数据导入导出imp/exp(转)
在oracle安装目录下有EXP.EXE与IMP.EXE这2个文件,他们分别被用来执行数据库的导入导出.所以Oracle数据导入导出imp/exp就相当与oracle数据还原与备份. 一.Oracle ...
- Java实现大批量数据导入导出(100W以上) -(一)导入
最近业务方有一个需求,需要一次导入超过100万数据到系统数据库.可能大家首先会想,这么大的数据,干嘛通过程序去实现导入,为什么不直接通过SQL导入到数据库. 大数据量报表导出请参考:Java实现大批量 ...
- python 全栈开发,Day126(创业故事,软件部需求,内容采集,显示内容图文列表,MongoDB数据导入导出JSON)
作业讲解 下载代码: HBuilder APP和flask后端登录 链接:https://pan.baidu.com/s/1eBwd1sVXTNLdHwKRM2-ytg 密码:4pcw 如何打开APP ...
随机推荐
- SAP Drag or drop tree
1 *&---------------------------------------------------------------------* 2 *& Report RSDEM ...
- ASP.NET MVC之model传值view
控制器中,我们有时会在知道用户名的情况下,再获取相关数据 例如: public ActionResult Index() { UserInfo Entity_Tem ...
- 如何修改 node_modules 里的文件
前言 有时候使用npm上的包,发现有bug,我们知道如何修改,但是别人可能一时半会没法更新,或者是我们特殊需求,别人不愿意修改,这时候我们只能自己动手丰衣足食.那么我们应该如何修改别人的源码呢?首先, ...
- Java Web servlet 详解
执行原理 当服务器接收到客户端浏览器的访问时,会解析请求的URL路径,获取访问的Servlet的资源路径 查找web.xml文件,看是否有对应的<url-pattern>标签体内容 如果有 ...
- Linux命令格式、终端类型和获取帮助的方法
Linux用户类型 Root用户:超级管理员,权限很大 普通用户:权限有限 终端 terminal 终端类型 物理终端:鼠标.键盘.显示器 虚拟终端:软件模拟出来的终端 控制台终端: /dev/con ...
- 交警也觉得妙——Python 识别车牌
车牌识别在高速公路中有着广泛的应用,比如我们常见的电子收费(ETC)系统和交通违章车辆的检测,除此之外像小区或地下 车库门禁也会用到,基本上凡是需要对车辆进行身份检测的地方都会用到. 一些背景: 车牌 ...
- 执行docker一系列命令失败
出现这种情况之后,执行下面的命令即可. systemctl restart docker
- Cron表达式(七子表达式)
一.七子含义 秒 分 时 日 月 周 年 可用的值 0~59 0~59 0~23 1~31 112(JANDEC) 17(SUNSAT) 1970~2099 可用的通配符 , - * / , - * ...
- 从零开始实现lmax-Disruptor队列(四)多线程生产者MultiProducerSequencer原理解析
MyDisruptor V4版本介绍 在v3版本的MyDisruptor实现多线程消费者后.按照计划,v4版本的MyDisruptor需要支持线程安全的多线程生产者功能. 由于该文属于系列博客的一部分 ...
- Go flag 详解,实现二级子命令
前言 日常开发使用到的命令行工具大都支持如下特性: 文档自动生成(如 -h --help) 多级子命令(如 docker exec -it) 支持参数(如 ls -color=auto) 长短选项(如 ...