之前两篇文章,介绍了命令行图形化的方式进行数据库的创建表的创建,相当于创建了一个框架,还没有具体数据,本篇就来介绍如何将数据添加到数据库的表中,以及如何查看表中的数据。

同样,本篇继续使用命令行图形化两种方式进行操作。

DB Brower方式 数据插入

首先是图形化的方式进行数据插入。

打开之前创建的test4.db数据库,准备向SCORE表中插入数据:

将窗口切换到“浏览数据”,进行数据的编辑。

点击插入数据的图标,依次输出几条数据。注意id这一项在点击插入数据时,是自动填充的,这是因为之前在创建表时,对id字段勾选了“自增”。

命令行方式查看数据

select语句

select语句的基本语法为:

SELECT column1, column2, columnN FROM table_name;
-- 或:
select column1, column2, columnN from table_name;

因为SQLite命令不区分大小写,所以上面两种方式都可以。

另外,SQLite支持通配符,例如可以使用*号表示所以,下面就是通过select语句来查询SCORE表中的所有数据:

select * from SCORE;

注意,SQLite语句是要以分号结尾的,如果一句指令没有加分号就换行,会出现...>的提示,表示此条语句还未结束。如果是真的结束但忘记打分号了,可以在换行后再输入一个分号结束。

修改显示格式

上面已经显示出了SCORE表中的所有数据,但似乎显示的不太明白,因为看不出来各个数据的含义。

显示表头(.header)

实际上是可以将表头显示出来的,因为默认的配置是不显示的,可以先通过.show命令来查看当前的显示配置。

使用.header on来开启表头的显示,然后再次查看数据,就可以看到表头显示出来了。

按列显示(.column)

上面虽然把表头显示出来了,但表头和数据没有对齐,还是不太方便查看,怎么办呢?

可以使用.mode column指令来让数据按列的方式整齐的显示出来,显示效果如下:

显示执行时间(.timer)

还可以使用.timer on指令来开始指令运行时间的显示:

命令行方式 数据插入

上面介绍了使用DB Brower图形软件进行数据插入,那命令行的方式如何插入数据呢?那就是使用对应的sqlite语句了。

insert语句

使用insert语句可以实现数据的插入。

方式一:

INSERT INTO TABLE_NAME [(column1, column2, column3,...columnN)]
VALUES (value1, value2, value3,...valueN);
-- 或:
insert into TABLE_NAME [(column1, column2, column3,...columnN)]
values (value1, value2, value3,...valueN);

这种方式,是先指明表中各列的名称,然后指明对应的各个数据。

示例如下,注意这里出现了一个小插曲,之前创建表时,字段chinese少打了一个e,导致出现错误提示,现在先将错就错,把数据插入:

方式二:

INSERT INTO TABLE_NAME VALUES (value1,value2,value3,...valueN);
-- 或:
insert into TABLE_NAME values (value1,value2,value3,...valueN);

这种方式,不需要指明表中各列的名称,直接根据表中各字段的顺序,指明对应的各个数据即可,我们使用大写和小写两种方式进行插入,可以看到都可以插入成功。

补充:表中字段名的修改

对应之前创建表时引入的错误:表中的字段名称写错了,如何修改呢?可以使用图形界面在修改,如下操作即可:

修改之后保存,然后可以再次使用命令行来打开数据库查看验证,发现修改成功了:

总结

本篇介绍了数据库中数据的插入(使用图形界面和命令行操作两种方式),命令行中数据显示格式的配置修改,以及SQLite的两个基本语句(select语句和insert语句)。

玩转SQLite4:SQLite数据插入与查看相关推荐

  1. SQLITE高速插入数据

    SQLITE数据库在写入数据时,写入数据库的速度非常重要,如果写入的速度慢,有大量数据待写入时,一是会造成程序卡顿,二是数据写入会失败,数据缺失. 传统的往数据库里插入数据是执行一条SQL语句,多条数 ...

  2. 安卓mysql插入数据_【11-25求助】关于Android 的SQLite数据库插入数据报错问题

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 运行程序,不知道为何点插入数据按钮会报错,请万能的吧友帮我看看,谢谢,不废话,直接上代码 MainActivity.java package com.ex ...

  3. android SQLite 批量插入数据慢的解决方案 (针对于不同的android api 版本)

    android SQLite 批量插入数据慢的解决方案 (针对于不同的android api 版本) 参考文章: (1)android SQLite 批量插入数据慢的解决方案 (针对于不同的andro ...

  4. anroid Sqlite批量插入数据优化方法

    SQLite的数据库本质上来讲就是一个磁盘上的文件,所以一切的数据库操作其实都会转化为对文件的操作,而频繁的文件操作将会是一个很好时的过程,会极大地影响数据库存取的速度. 例如:向数据库中插入100万 ...

  5. SQLite解决插入大量数据速度慢的问题

    SQLite解决插入大量数据速度慢的问题 背景 在重构公司项目中发现,公司以前代码中将大量数据插入SQLite数据库,速度非常慢,几千条居然需要将近1分钟: 解决方法 知识背景 事务(Transact ...

  6. jdbc批量插入的4种方式【百万条数据插入只需几秒】

    mysql数据库准备 #打开数据库test01; use test01; #创建表a,表a包含int型的id列.可变长度型的name[长度20个字符] create table a (id INT,N ...

  7. SQLite批量插入效率

    一.循环单条数据插入 SQLite插入单条数据效率并不高,原因是: Because it does not have a central server to coordinate access, SQ ...

  8. leveldb源码分析:数据插入续(跳表)

    leveldb数据的插入-跳表 本文主要是接着上一篇文章,继续深入探索Write函数调用插入之后的流程. status = WriteBatchInternal::InsertInto(updates ...

  9. redis php数据插入失败,redis插入数据,恢复数据测试(禁止淘汰策略下恢复大于redis内存限制数据情况)...

    环境准备: redis php的redis扩展 redis version=4.0.8 php version: php version.png php redis extension: php re ...

最新文章

  1. 如何学好Python?相信很多人都做错了!
  2. Linux 桌面玩家指南:17. 在 Ubuntu 中使用 deepin-wine,解决一些依赖 Windows 的痛点问题
  3. 构建本地缓存java_Java8简单的本地缓存实现
  4. HTML带有圆点的列表,HTML 列表
  5. Android上SQLite的性能优化问题
  6. Java实现一个简单的两人五子棋游戏(二) 画棋盘
  7. python爬取谷歌学术_JS反爬绕过思路之--谷歌学术镜像网链接抓取
  8. linux网络端口失效( Device eth0 does not seem to be present,delaying initialization)解决方法
  9. 片段音乐歌词生成工具
  10. python绘画海贼王_入门级项目实战,Python生成海贼王云图!
  11. R语言ggplot2可视化格式化轴标签:用逗号格式化ggplot2轴标签、在轴标签数值中加入符号标签(货币符号)
  12. vue3 组件naiveui报错: Extraneous non-props attributes (class) were passed to component but could not be
  13. 成功转行IT软件测试,分享下我本科毕业2年转行的经历
  14. 第3章(3.11~3.16节)模型细节/Kaggle实战【深度学习基础】--动手学深度学习【Tensorflow2.0版本】
  15. 互联网成数据宝库,网络数据采集技术推动人工智能发展
  16. 前端项目中引入高德离线地图
  17. Shell编程之for循环语句
  18. ubuntu nsight eclipse 打不开
  19. 平民如何在Labview2017中安装正版的DAQmx和Mathscript驱动?
  20. Movavi Slideshow Maker 7 for mac(幻灯片制作软件)

热门文章

  1. 《数据结构与算法之哈夫曼树(Java实现)》
  2. ENVI软件对Landsat-8数据进行辐射定标、大气校正、提取NDVI、估算植被覆盖度等操作【图说GIS】
  3. matlab 年积日与年月日转换,空间大地测量与GPS导航定位时间系统相互转换,格里高利时通用时儒略日,GPS时,年积日相互转换的源代码程序...
  4. 20230103编译ToyBrick的TB-RK3588X的Andorid12的LOG02
  5. YUV Player Deluxe 注册
  6. bp神经网络缺点及克服,bp神经网络存在的问题
  7. Linux arping :向相邻主机发送ARP请求
  8. 四川高考2021成绩排名查询,2020年四川高考成绩排名查询系统 四川高考位次排名表...
  9. 时间序列分析-----1---简介
  10. Vs —— 转移Qt项目后环境问题