最近要做数据预处理,需要用到数据库。而且是以前从来没听说过的TimesTen

首要目标是要把Excel里的数据,导入到TimesTen数据库中。而TimesTen在win10里用不了,于是我就在虚拟机装了win7,之后在网上狂搜关于TimesTen的东西。折腾了一周,才算明白了一点。

然后又疯狂google百度怎么从Excel导数据到TimesTen

网上有人总结了不少Excel数据导入到数据库的,可大都与TimesTen关系不大,通过多次测试,用sql developer导入数据到TimesTen数据库是可以的,但是有点问题。具体步骤是1、把excel另存为csv文件(直接改格式不行,需要另存为或导出为csv格式的文件)。2、用sql developer连接timesten数据库并导入数据。问题是,导入varchar2数据的时候,会提示Invalid string--strings must be enclosed with"..."。后来我手动在csv文件里给varchar2数据加了"",就可以导入了。这未免太低效了,跟一句一句insert有什么区别!

然后昨晚10点多看到Oracle数据库有个sqlldr方法可以设置把字符串用""enclosed,这不正好解决以上的问题嘛。可是今早来了一试,TimesTen里压根没有什么sqlldr方法……于是我就想,那TimesTen应该是有自己的方法的。

果不其然,很快就找到了ttBulkCp。通过ttBulkCp -h看了一下怎么用,不太懂,又google了一下。最后动手一试,两下就成功了。

ttBulkCp导入数据步骤

首先,创建一个空表:

然后,有一个excel表格,存放着待导入的数据:

导入数据之前,需要把excel表格另存为或导出为.csv文件

        

然后csv文件可以用记事本打开:

而直接改.xlsx格式为.csv的话,用记事本打开看到的是乱码。

然后就可以导入数据了:

可以看到,数据已经导入成功了,再连进去看一下:

最后再演示一下错误的:

可以看到只改了一个值,就是-Q后面的0改成了1。我原来用sql developer导入数据的时候也是提示这样的错误。那么来看一下-Q是什么意思:

意思大概就是是否需要用引号引住字符串数据。我一开始选的1,错了,再选0,就对了。那么,0大概表示不需要引号把字符串引起来,因为ttBulkCp会识别出来数据类型。如果选1就是需要导入的数据中的字符串数据必须被引号包含,否则会出错,这种情况适合于把另一个数据库导出的数据导入到timesten中。

用ttBulkCp把excel中的数据导入到timesten数据库中的更多相关文章

  1. 用JDBC把Excel中的数据导入到Mysql数据库中

    步骤:0.在Mysql数据库中先建好table 1.从Excel表格读数据 2.用JDBC连接Mysql数据库 3.把读出的数据导入到Mysql数据库的相应表中 其中,步骤0的table我是先在Mys ...

  2. c#.net Excel中的数据导入到SQL数据库中

    /// <summary>        /// 从Excel 导入学生        /// </summary>        /// <param name=&qu ...

  3. 把excel中的数据导入到Oracle数据库中

    从事工作以来,数据库一直使用oracle,却不知道excel导入oracle,今天看了一篇文章,分享给大家,希望对大家有用. https://jingyan.baidu.com/article/0f5 ...

  4. 怎样把excel的数据导入到sqlserver2000数据库中

    在做程序的时候有时需要把excel数据导入到sqlserver2000中,以前没从外部导入过数据,今天刚做了一下导入数据,感觉还是蛮简单的,没做过之前还想着多么的复杂呢,下面就来分享一下我是如何把ex ...

  5. 使用tdload工具将本地数据导入到Teradata数据库中

    想把本地的数据文件(比如txt.csv)中的数据导入到Teradata虚拟机中的表中.既可以使用Teradata Assistant中的import功能,也可以使用fastload导入,前者的缺点是一 ...

  6. Excel表数据导入Sql Server数据库中

    Excel表数据导入Sql Server数据库的方法很多,这里只是介绍了其中一种: 1.首先,我们要先在test数据库中新建一个my_test表,该表具有三个字段tid int类型, tname nv ...

  7. 使用navicat for sqlserver 把excel中的数据导入到sqlserver数据库

    以前记得使用excel向mysql中导入过数据,今天使用excel向sqlserver2005导入了数据,在此把做法记录一下 第一步:准备excel数据,在这个excel中有3个sheet,每个she ...

  8. Excel 数据导入至Sqlserver 数据库中 ltrim() 、rtrim() 、replace() 函数 依次空格无效问题

    今天导一些数据从Excel中至Sqlserver 数据库中,在做数据合并去重的时候发现,有两条数据一模一样,竟然没有进行合并: 最后发现有一条后面有个“空格”,正是因为这个“空格”让我抓狂许久,因为它 ...

  9. 如何用java POI将word中的内容导入到mysql数据库中

    由于作业需要,要求我们将word文档中的数据直接导入到mysql中,在网上找了很常时间,终于将其解决. 由于比较初级,所以处理的word文档是那种比较规范的那种,条例比较清晰,设计的思路也比较简单,就 ...

随机推荐

  1. python-类对象以字典模式操作

    #类对象以字典模式操作 class Person: def __init__(self): self.cache={} def __setitem__(self, key, value): #增加或修 ...

  2. 安装AB编程软件提示安装失败时如何处理

    前言:在安装Studio 5000.FT VIEW.Logxi Emulate等AB编程软件,有时会出现安装失败.在这里,根据自己在安装过程中出现的错误情形,介绍如何处理的方法. 方法步骤 1.在安装 ...

  3. Bootstrap使用-1

    目录 结构: 1. 视图函数 2. 模板 3. 登陆 4. 怎样发生的 添加模板 基础模板提供的block 定制基础模板 结构: $ tree -I "__pycache*|*.pyc|*. ...

  4. 题解 洛谷P3936 Coloring

    考虑搜索,发现复杂度爆炸        贪心,正确性过低(~~实测爆炸~~) 于是,~~发现~~这题是模拟退火 这里不讲解退火的定义了,初学退火可以去平衡点 退火本身维护一个答案图像,答案的q,当前图 ...

  5. CentOS7.6搭建redis4.0.1 cluster集群

    1. 操作系统信息: $ uname -a Linux iZbp11d57wmumnwuihb2czZ -.el7.x86_64 # SMP Fri Feb :: UTC x86_64 x86_64 ...

  6. webpack 打包报错:One CLI for webpack must be installed. These are recommended choices, delivered as separate packages

    webpack 打包报错: One CLI for webpack must be installed. These are recommended choices, delivered as sep ...

  7. vue 双向数据绑定的实现学习(二)- 监听器的实现

    废话:上一篇https://www.cnblogs.com/adouwt/p/9928278.html 提到了vue实现的基本实现原理:Object.defineProperty() -数据劫持 和  ...

  8. Light OJ 1085 - All Possible Increasing Subsequences

    题目 link 给定一个序列, 求出上升子序列的总数. 分析 Dp[i] 表示序列 以 i 结尾的数目. 可知 Dp[i]=∑Dp[x]+1 这是一个前缀和, 用树状数组维护. Code #inclu ...

  9. Java字符串中常用字符占用字节数

    java中一个char型的数据(也就是一个字符)占两个字节.而Java中常用的字符包括数字.英文字母.英文符号.中文汉字.中文符号等,若在字符串中包含里面的多种字符,它们是否都占两个字符呢?答案是否定 ...

  10. Union 与 Union all 的区别【坑】

    UNION操作符用于合并两个或多个SELECT语句的结果集 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每条 SELECT 语句中的列的顺序必 ...