SQLite 数据表的创建与查看 | 学习笔记

简介: 快速学习 SQLite 数据表的创建与查看

开发者学堂课程【嵌入式之 RFID 开发与应用2020版:SQLite 数据表的创建与查看】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/665/detail/11224


SQLite 数据表的创建与查看

表的创建与查看

首先是创建语句:

语法: create table 表名称(列名称 1 数据类型,列名称 2 数据类型,列名称 3 数据类型, ..);

创建表格,该表包含 3 列,列名分别是:“id” 、“name” 、“addr”。

在终端下输入:

sqlite> create table persons(id integer, name text, addr text) ;

创建表格之前需要首先创建数据库。通过以下语句创建一个不存在的数据库:

edu@edu: sqlite$ sqlite3 stu. db

如果退出不做任何操作,那么该数据库不存在。创建数据库之后,要创建表格。首先使用 create 关键字,后面是 table,表示创建一张表,之后是表的名称,之后是表的数据结构。

通过以下语句,创建一张表格:

sqlite> create table tbL(id intergen , name text, addr text)

ID 需要指定类型为 integer,如果有多个数据结构,有多个列就需要用逗号分隔,其次是姓名,以文本形式,第三个是家庭住址,也是文本形式。 创建完 3 个属性之后,要以分号结尾。创建完成之后,输入以下语句:

sqLite>.table

tbl

还可以通过如下语句:

sq Lite> . schema

schema 也能够查看当前数据库有哪些表格, schema 查询的时候会将表的结构打印出来:

CREATE TABLE tbl(id interger ,name text, addr text) ;

table 或 Trigger 或 index 会在此处说明。之后就是列的名称和属性都会列出,更加直观,查看表中的内容需要使用select。此时查询不到任何信息,表示表存在,但表中没有任何内容,所以需要往表中添加内容。 创建完成之后,还存在一个问题。查看表中有内容的表。

通过如下语句:

select * from stu_ info;

表中目前信息如下:

200800 j jlangbo |成都11

200807 |李勇|甘肃|90

2008151 lucy | Lanzou |10

200811 obama |美国99

6804570 | tvl | 6429856

2009121张三|北说|34

第一个是 ID,第 2 个是 Name,最后是城市。但是存在一个问题,每一行理论上是不同的。但其中有两行的 ID 号 Name 和城市,包括成绩完全相同。也就是现在表中出现了两行信息完全相同的内容。此时,查询之后的结果,并不是唯一的。只要匹配上,都会显示出来。此时就会添加约束。

不论表是否相同,都希望有一列信息记录每一列的序号,将这一列称为主键,所以可以给表设置一个主键。例如,在终端输入以下语句:

sqlite> create table persons (id integer primary key ,

name text, addr text) ;

在数据类型之后加入了 primary Key。表示,把 ID 指定为主键。指定为主键之后,使得 ID 在递增过程当中不能重复。如果表中数据已经存在序号为 105 的数据,那么在之后再次插入 105 时就会添加失败。此时即可保证每一行的信息。

在内容重复的情况下,也保证有其中一列不重复,从而有利于检索。为了达到效果,所以不建议用户将有效信息设置为主键。尽量不要将学号姓名家庭住址等设置为主键,将其设置为主键之后就不可重复就给了用户限制。

如果要创建带主键的表,输入以下语句:

CREATE TABLE tb12(id interger primary key, name text, addr text) ;

首先需要指定创建的类的属性。因为 create 不止可以创建一张表,还可以创建其他事务,所以需要先指定创建的是 table。之后,再指定表名和表的内容。首先创建 ID 为 integer 类型,并且指定其为主键,之后是姓名和地址。

此时创建完成,存在 2 张表。建议用户不要将主键设置为有效的数据列当中,最好是单独一列设置主键。主键添加完成之后,如果需要查看表就用到 Table 或scheme。除了以上普通查看以外,还可以使用图形化工具。在本课程当中不使用Linux 版本,因为 Linux 版本更简单。

如果要让 Linux 系统支持图形化界面,只需要将以下内容安装即可:

sudo apt-get install sqliteman

目前不支持 18.04 的 x11 图形化界面,此时服务器不在本地,是远程服务器,所以无法看到图形化界面,所以使用工具。工具有 2 个版本分别是安装版和绿色版,2个版本都可以使用。绿色版本直接运行即可。

直接运行 exe 即可。打开完成之后,效果如下:

image.png

当中存在一个已经写好的数据库,可以用其进行测试。将其拷贝之后,先将之前的表格进行移除:

image.png

将所需要的数据库拖入其中,效果如下:

image.png

以下是数据结构:

image.png

表拥有以下结构:

1. 数据类型

2. 主键

3. 唯一约束条件等。

以下为数据:

image.png

可以在此处插入一行或多行,插入以下内容:

200988

李四

北京

80

插入完成数据之后必须要进行保存,效果如下:

image.png

然后是对具体的值的说明,效果如下:

image.png

完成之后,点击提交即可完成所有更改。上市在图形化界面当中,对数据库表格的数据操作。在命令行当中可以使用以下命令查询表数据:

sqlite$ sqlite3 stu info. Db

select * from stu_info;

查询完成之后,此时多了一条数据:

200800 j jlangbo |成都11

200807 |李勇|甘肃|90

2008151 lucy | Lanzou |10

200811 obama |美国99

6804570 | tvl | 6429856

2009121张三|北说|34

200988|李四|北京|80

默认按照升序排列,将数据插入到了最后一条。该信息在图形化界面当中也可以看到。创建方法就是 create 方法,也可以通过图形化界面,查看也相同。对于 Linux 系统,工具相同。以上是表的创建和查看。

相关文章
|
2月前
|
存储 SQL 关系型数据库
Mysql学习笔记(二):数据库命令行代码总结
这篇文章是关于MySQL数据库命令行操作的总结,包括登录、退出、查看时间与版本、数据库和数据表的基本操作(如创建、删除、查看)、数据的增删改查等。它还涉及了如何通过SQL语句进行条件查询、模糊查询、范围查询和限制查询,以及如何进行表结构的修改。这些内容对于初学者来说非常实用,是学习MySQL数据库管理的基础。
134 6
|
3天前
|
关系型数据库 MySQL 数据库
Python处理数据库:MySQL与SQLite详解 | python小知识
本文详细介绍了如何使用Python操作MySQL和SQLite数据库,包括安装必要的库、连接数据库、执行增删改查等基本操作,适合初学者快速上手。
48 15
|
2月前
|
SQL Ubuntu 关系型数据库
Mysql学习笔记(一):数据库详细介绍以及Navicat简单使用
本文为MySQL学习笔记,介绍了数据库的基本概念,包括行、列、主键等,并解释了C/S和B/S架构以及SQL语言的分类。接着,指导如何在Windows和Ubuntu系统上安装MySQL,并提供了启动、停止和重启服务的命令。文章还涵盖了Navicat的使用,包括安装、登录和新建表格等步骤。最后,介绍了MySQL中的数据类型和字段约束,如主键、外键、非空和唯一等。
75 3
Mysql学习笔记(一):数据库详细介绍以及Navicat简单使用
|
1月前
|
存储 SQL 数据库
数据库知识:了解SQLite或其他移动端数据库的使用
【10月更文挑战第22天】本文介绍了SQLite在移动应用开发中的应用,包括其优势、如何在Android中集成SQLite、基本的数据库操作(增删改查)、并发访问和事务处理等。通过示例代码,帮助开发者更好地理解和使用SQLite。此外,还提到了其他移动端数据库的选择。
38 8
|
2月前
|
Web App开发 SQL 数据库
使用 Python 解析火狐浏览器的 SQLite3 数据库
本文介绍如何使用 Python 解析火狐浏览器的 SQLite3 数据库,包括书签、历史记录和下载记录等。通过安装 Python 和 SQLite3,定位火狐数据库文件路径,编写 Python 脚本连接数据库并执行 SQL 查询,最终输出最近访问的网站历史记录。
36 4
|
2月前
|
存储 关系型数据库 数据库
轻量级数据库的利器:Python 及其内置 SQLite 简介
轻量级数据库的利器:Python 及其内置 SQLite 简介
64 3
|
2月前
|
应用服务中间件 PHP Apache
PbootCMS提示错误信息“未检测到您服务器环境的sqlite3数据库扩展...”
PbootCMS提示错误信息“未检测到您服务器环境的sqlite3数据库扩展...”
|
3月前
|
存储 API 数据库
QML使用Sqlite数据库存储ListModel数据
本文介绍了在QML中使用Sqlite数据库存储ListModel数据的方法,包括如何创建数据库、读取数据、动态添加和删除数据,以及如何在程序启动和退出时与数据库同步数据。
|
3月前
|
数据库 数据库管理
qt对sqlite数据库多线程的操作
本文总结了在Qt中进行SQLite数据库多线程操作时应注意的四个关键问题,包括数据库驱动加载、加锁、数据库的打开与关闭,以及QsqlQuery变量的使用。
208 1
|
2月前
|
存储 缓存 关系型数据库
sqlite 数据库 介绍
sqlite 数据库 介绍
43 0