当前位置:首页 > 数据库 > SQlite

我是否了解如何将我的.csv文件导入sqlite?

我目前有一个.csv文件,其中包含几行未标记的数据列,据我所知,它们转换为sqlite中的以下数据类型:

> datetime(格式为2011年7月19日下午12:00:00)->数字
>双->真实
> char(1)->文本
>浮动->真实

我可以通过执行以下操作来创建数据库:

sqlite> create table myTable (myVar1 numeric, myVar2 real, myVar3 text, myVar4 real);
sqlite> .separator ","
sqlite> .import myFile.csv myTable

然后,我将新创建的myTable.db复制并粘贴到我的Eclipse项目中的“ assets”文件夹中.我制作了一个扩展SQLiteOpenHelper的DatabaseHelper类,然后可以开始在我的Android项目中使用数据库并从中读取数据.

我说对了吗?我以前从未使用过数据库,并且在执行此操作时看到了很多不同的说明.我的一些问题是-我是否必须标记.csv文件的列?我的.csv文件不够“简单”到仅使用.import,我需要找到一个程序来翻译它吗?我遇到过一些网站,说我需要将某些东西(我似乎没有)重命名为“ _id”,而且我不知道这是什么,在哪里,如何执行,或者是否它甚至是必要的,或者它是做什么的.我还想念什么?

解决方法:

我认为除了第一个datetime列之外,您都“正确”了.您应该使用TEXT类型,而不是数字类型.

另外,您可以在导入后检查数据,看情况是否良好,尤其是在该日期时间字段中:

SELECT * FROM myTable ORDER BY RANDOM() LIMIT 10;

更新

针对OP的最后评论:我对您存储日期(时间)的方式的理解是它取决于您的上下文.因此,如果平面文件中的日期格式为“ 7/19/2011 12:00:00 PM”,则无需进行任何转换就可以将其导入为TEXT.


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!