当前位置:首页 > 芯闻号 > 充电吧
[导读]SQLite 创建、修改、删除表一、数据库定义语言 DDL在关系型数据库中,数据库中的表 Table、视图 View、索引 Index、关系 Relationship 和触发器 Trigger 等等,

SQLite 创建、修改、删除表

一、数据库定义语言 DDL


在关系型数据库中,数据库中的表 Table、视图 View、索引 Index、


关系 Relationship 和触发器 Trigger 等等,构成了数据库的架构 


Schema。 在 SQL 语句中,专门有一些语句用来定义数据库架构,这


些语句被称为“数据库定义语言”,即 DDL。


SQLite 数据库引擎支持下列三种 DDL 语句:


    CREATE

    ALTER TABLE

    DROP


其中,CREATE 语句用来创建表 Table、视图 View、索引 Index、关


系 Relationship 和触发器 Trigger, DROP语句用来删除表 Table、


视图 View、索引 Index、关系 Relationship 和触发器 Trigger, 


ALTER TABLE 语句用来改变表的结构。


今天这一篇只涉及到表的相关内容,视图、触发器等到后面再讲。

二、SQLite 中的数据类型


SQLite 数据库中的数据一般由以下几种常用的数据类型组成:


    NULL - 空值

    INTEGER - 有符号整数

    REAL - 浮点数

    TEXT - 文本字符串

    BLOB - 二进制数据,如图片、声音等等


SQLite 也可以接受其他数据类型。

三、创建表 CREATE TABLE


首先,创建一个 test.db 数据库并进入 SQLite 命令行环境,还记得


怎么做吗?


[xiazhujie@localhost]:~$ sqlite3 test.db

-- Loading resources from /home/xiazhujie

/.sqliterc

SQLite version 3.7.4

Enter ".help" for instructions

Enter SQL statements terminated with a ";"


sqlite> .tables


sqlite>


向上面这样,我们就在终端中创建了一个 test.db 数据库,并且通过 


.tables 命令查询数据库中的表,结果没有任何返回,因为数据库本


来就是空的嘛。


下面我们创建一个 Student 表,其中包含 Id、Name、Age 等字段.


sqlite> CREATE TABLE Students(Id integer,Name text,age 


integer);


sqlite> .tables

Students


sqlite> .schema Students

CREATE TABLE Students(Id integer,Name text,age integer);


向上面这样,一个 Students 表就被建立了,这回再运行 .tables 命


令就有响应了,系统告诉我们数据库中现在有一个 Students 表, 运


行 .schema 命令,返回了我们创建这个表的 SQL 命令。

四、修改表 ALTER TABLE


SQLite 仅仅支持 ALTER TABLE 语句的一部分功能,我们可以用 


ALTER TABLE 语句来更改一个表的名字,也可向表中增加一个字段(


列),但是我们不能删除一个已经存在的字段,或者更改一个已经存


在的字段的名称、数据类型、限定符等等。


    改变表名 - ALTER TABLE 旧表名 RENAME TO 新表名

    增加一列 - ALTER TABLE 表名 ADD COLUMN 列名 数据类型 限定



下面我们来演示一下,将前面的 Students 表的名字改为 Teachers


sqlite>

sqlite> .tables

Students


sqlite> ALTER TABLE Students RENAME TO Teachers;


sqlite> .tables

Teachers

sqlite>


原来数据库中只有一个 Students 表,改名以后再运行 .tables 命令


,发现 Students 表已经没了,现在变成了 Teachers 表。


下面改变 Teachers 表的结构,增加一个 Sex 列



sqlite> .schema Teachers

CREATE TABLE "Teachers"(Id integer,Name text,age integer);


sqlite> ALTER TABLE Teachers ADD COLUMN Sex text;


sqlite> .schema Teachers

CREATE TABLE "Teachers"(Id integer,Name text,age integer, Sex 


text);



五、删除表 DROP TABLE


删除一个表很简单,只要给出表名即可


    删除表 - DROP TABLE 表名


下面,我们将 test.db 中的 Teachers 表删除


sqlite> .tables

Teachers


sqlite> DROP TABLE Teachers;


sqlite> .tables


删除 Teachers 表后再运行 .tables 命令,发现数据库已经空了。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

  医疗解决方案目的的临界性是免除干扰影响的重要因素。虽然无线局域网络、蓝牙低功耗技术等无线接口本身可用于较大规模的网络运作,而且该项低功耗技术能改善原本蓝牙技术所采用的多项组件,然而,装置操作环境中

关键字: Android 数据库 游戏开发 sqlite

作为针对Red Hat Enterprise Linux的最后一步,Fedora的Red Hat开发人员计划将以前使用的Berkeley DB RPM数据库(RPMDB)切换到SQLite。

关键字: berkeley Linux sqlite rpm数据库

作者:朱金灿来源:http://blog.csdn.net/clever101            在并发访问sqlite数据库会出现这样一个错误:databseis locked,这是sqlite

关键字: sqlite

原文转载于:https://www.cnblogs.com/5211314jackrose/p/5816066.html1、异步I/O模式    通常,当SQLite写一个数据库文件时,会等待,直到写

关键字: sqlite

Singleton 单例模式,又叫单子模式,是一种常见的软件设计模式。这种模式的特点就是应用了 Singleton 单例模式的类必须保证始终只有一个实例(对象)存在。许多时候系统中需要某个类只能同时存

关键字: sqlite

    今天在Qt for Android跑离线数据,要使用到Sqlite数据库,当时是在pc端跑过了的,一切流程都很ok了,所以就准备转移到安卓设备上面试一试,发现刚运行初始化Sqlite时就出现了

关键字: qml sqlite localstorage

* 从 http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki 下载了 sqlite-netFx35-setup-b

关键字: c# sqlite

SQLite 日期类型(转)SQLite日期类型简单示例:SELECT     datetime(CHANGE_DATE,'localtime'),     strftime('%Y-%m-%d',C

关键字: sqlite 日期类型

SQLite说C语言好,到底好在哪里?

关键字: C语言 sqlite

打开sqlite数据库需要用到sqlite3_open函数,但是sqlite3_open函数的第一个参数是数据库文件的绝对路径。它是有讲究的,必须是utf8字符串。也就是说假如文件路径是非utf8字符

关键字: sqlite
关闭
关闭