美文网首页
SQLite学习(二)

SQLite学习(二)

作者: 须左能乎 | 来源:发表于2018-01-20 12:43 被阅读11次

获得数据库的 Schema 信息

1.通过.tables 获取所有表和视图的列表,以上一节为例查询:

sqlite> .tables
输出:schema  test  

可以看到我们创建的表 test 和视图 schema。

注:视图是一张虚拟的表,由一个预定义的查询select语句组成,可以将一系列复杂的selcet语句转换成一个视图,避免每次输入一大堆的查询语句。
要删除视图则:drop view [视图名];

2.同样的,要显示一个表的索引,可以键入命 令.indices [table name]:

sqlite> .indices test
输出:test_idx

3.使用.schema [tablename]可以得到一 个表或视图的定义(DDL)语句:

sqlite> .schema test
输出:
CREATE TABLE test(id integer primary key, value text);
CREATE INDEX test_idx on test(value);

如果没提供表名,则返回所有数据库对象(包括 table、indexe、 view 和 index)的定义语句:

sqlite> .schema
输出:
CREATE TABLE test(id integer primary key, value text);
CREATE INDEX test_idx on test(value);
CREATE VIEW schema as select * from sqlite_master;
编号 字段 说明
1 type 值为"table"、 "index"、 "trigger"或"view"之一。
2 name 对象名称,值为字符串。
3 tbl_name 如果是表或视图对象,此字段值与字段 2 相同。如果是索引或触 发器对象,此字段值为与其相关的表名。
4 rootpage 对触发器或视图对象,此字段值为 0。对表或索引对象,此字段 值为其根页的编号。
5 SQL 字符串,创建此对象时所使用的 SQL 语句。

4.更详细的 schema 信息可以通过 SQLite 唯一的一个系统视图 sqlite_master得到,这个视图是一个系统目录,它的结构如下表所示:

编号 字段 说明
1 type 值为"table"、 "index"、 "trigger"或"view"之一。
2 name 对象名称,值为字符串。
3 tbl_name 如果是表或视图对象,此字段值与字段 2 相同。如果是索引或触 发器对象,此字段值为与其相关的表名。
4 rootpage 对触发器或视图对象,此字段值为 0。对表或索引对象,此字段 值为其根页的编号。
5 SQL 字符串,创建此对象时所使用的 SQL 语句。

查询当前数据库的 sqlite_master 表:

sqlite> .mode col
sqlite> .headers on
sqlite> select * from sqlite_master order by type;
结果如下: image.png

相关文章

  • SQLite学习(二)

    获得数据库的 Schema 信息 1.通过.tables 获取所有表和视图的列表,以上一节为例查询: 可以看到我们...

  • SQLite 学习笔记(二)

    表名coco 一、SQLitem函数 1.SELECT COUNT(*) FROM coco; 计算表的行数 2....

  • [学习]SQLite操作(二)

    今天学习了数据库的简单的查询操作。现在还没有用上高级的查询,而是普通的查询。 今天这个是接着昨天的,使用昨天创建的...

  • SQlite数据库简介

    Android网络与数据存储 第二章学习 SQlite数据库#### 概要: SQLite看名字就知道是个数据库,...

  • iOS数据持久化(4)-SQLite

    学习SQLite不是本文的目的,所以关于SQLite的学习,请查找其他资料,本文的重点是iOS上使用SQLite入...

  • Android数据库代码优化(2) - 从SQLite说起

    从SQLite说起 如果没有SQLite的基础,我们只是从Android封装的SQLite API去学习的话,难免...

  • SQlite数据库的加密与解密

    一 关于SQlite Android系统自带的SQlite是明文存储,不支持加密 二 SQlite加密方式 内容加...

  • SQLite 学习

    SQLite简介 SQLite是一个小型数据库,它被集成到Android系统中完成数据库部分。它不需要进行配置和管...

  • android笔记6

    本章学习目标: 了解SQLite数据库的特点和体系结构 掌握SQLite数据库的建立和操作方法 SQlite介绍 ...

  • SQLite学习二、运算符

    SQLite中支持的运算符有:算术运算符比较运算符逻辑运算符位运算符 前面三个在SQL的学习中都已经介绍了,这里我...

网友评论

      本文标题:SQLite学习(二)

      本文链接:https://www.haomeiwen.com/subject/spwgoxtx.html