美文网首页
SQLite基础知识学习

SQLite基础知识学习

作者: 苍简 | 来源:发表于2019-02-16 17:27 被阅读2次

前 言

前一段时间偶然的看到了一个名词SQLite3,大概了解到此为一种轻量型的关系型数据库。官网介绍到SQLite是一个进程内库,它实现了一个自包含的、无服务器的、零配置的事务性SQL数据库引擎(官网:https://www.sqlite.org/)。后来也是偶然的机会,公司使用的数据库存储有问题,无意中看到了三线开发工程师尽然使用SQLite命令加了一块数据盘上去,故此对SQLite的好奇就更进一步了,下面简单学习介绍一下。

SQLite于2000年8月17日发布1.0版本,于2001年9月28日发布2.0.0版本,于2004年6月18日发布3.0.0版本,于2018年11月05日发布了3.25.3,这是写本文时最新的一个版本。

image

(SQLite历史版本)

SQLite是遵守ACID[原子性、一致性、隔离性和持久性]的关系数据库管理系统,它包含在一个相对小的C程序库中。与许多其它数据库管理系统不同,SQLite不是一个客户端/服务器结构的数据库引擎,而是被集成在用户程序中。

SQLite遵守ACID,实现了大多数SQL标准。它使用动态的、弱类型的SQL语法。它作为嵌入式数据库,是应用程序,如网页浏览器,在本地/客户端存储数据的常见选择。它可能是最广泛部署的数据库引擎,因为它正在被一些流行的浏览器、操作系统、嵌入式系统所使用。同时,它有许多程序设计语言的语言绑定。SQLite是D. Richard Hipp创建的公有领域项目。

为什么要使用SQLite?

  • 不需要一个单独的服务器进程或操作的系统(无服务器的)。

  • SQLite不需要配置,这意味着不需要安装或管理。

  • 一个完整的SQLite数据库是存储在一个单一的跨平台的磁盘文件。

  • SQLite是非常小的,是轻量级的,完全配置时小于 400KiB,省略可选功能配置时小于250KiB。

  • SQLite是自给自足的,这意味着不需要任何外部的依赖。

  • SQLite事务是完全兼容 ACID 的,允许从多个进程或线程安全访问。

  • SQLite支持 SQL92(SQL2)标准的大多数查询语言的功能。

  • SQLite使用 ANSI-C 编写的,并提供了简单和易于使用的 API。

  • SQLite 在 UNIX(Linux, Mac OS-X, Android,iOS)和 Windows(Win32, WinCE,WinRT)中运行。

SQLite的安装

Linux系统和MAC系统均已经集成了SQLite,可直接使用,键入sqlite3即可。如下:

[root@JiekeXu01 ~]# sqlite3

SQLite version 3.6.20

Enter ".help" for instructions

Enter SQL statements terminated with a ";"

sqlite>

使用.help命令获取更多帮助,使用.quit退出使用界面。如果没有上面的结果,就意味着没有安装,便在官网下载相对应位数的源码tar.gz包,解压此包sqlite-autoconf-3250300.tar.gz编译安装即可。命令如下:

$tar xvfz sqlite-autoconf-3250300.tar.gz

$cd sqlite-autoconf-3250300

$./configure --prefix=/usr/local

$make

$make install

编译完后即可使用命令 sqlite3 验证。

在 Windows 上安装 SQLite时,需要下载sqlite-dll-win64-x64-3250300.zip和sqlite-tools-win32-x86-3250300.zip。创建文件夹 D:\sqlite3,并在此文件夹下解压上面两个压缩文件,将得到 sqlite3.def、sqlite3.dll 和 sqlite3.exe 文件。添加 D:\sqlite3到 PATH 环境变量,最后在命令提示符下,使用 sqlite3 命令,将显示如下结果:

D:>sqlite3

SQLite version 3.25.3.0 2018-11-05 19:53:45

Enter ".help" for instructions

Enter SQL statements terminated with a ";"

sqlite>

SQLite基础语法

SQLite 是不区分大小写的,但也有一些命令是大小写敏感的,比如 GLOB 和 glob 在 SQLite 的语句中有不同的含义。所有的 SQLite 语句可以以任何关键字开始,如 SELECT、INSERT、UPDATE、DELETE、ALTER、DROP 等,所有的语句以分号(;)结束。注释是以两个连续的 "-" 字符(ASCII 0x2d)开始,并扩展至下一个换行符(ASCII 0x0a)或直到输入结束,以先到者为准。您也可以使用 C 风格的注释,以 "/" 开始,并扩展至下一个 "/" 字符对或直到输入结束,以先到者为准。SQLite的注释可以跨越多行。

SQLite****创建数据库:

$sqlite3 DatabaseName.db image

SQLite****创建表:

CREATE TABLE database_name.table_name(

column1 datatype PRIMARY KEY(one or more columns),

column2 datatype,

.....

columnN datatype,

)****;

创建完之后。便可以使用.tables查看相关的表,使用..schema tablename查看表具体信息。那么删除表操作,和Oracle一样,这里不再演示了,使用DROP TABLE database_name.table_name即可删除表,一旦删除表中信息将无法找回了。

image

SQLite的增、删、改、查和之前学过的MySQL、Oracle语法一样,均是采用标准SQL格式,这里不再进行说明,简单如下图所示:

image image

好了关于SQLite的基础知识就介绍这么多,想要了解更多,可访问《菜鸟教程》“http://www.runoob.com/sqlite”,下面简单说说关于Python操作SQLite数据库。

相关文章

  • SQLite基础知识学习

    前 言 前一段时间偶然的看到了一个名词SQLite3,大概了解到此为一种轻量型的关系型数据库。官网介绍到SQ...

  • SQLite

    SQLite 基础知识 SQLite 列操作 sqlite中不支持删除列的操作,也不能够修改主键。 从上图可见,S...

  • SQLite3 C 教程

    这是 SQLite 数据库的 C 编程教程,它介绍了使用 C 语言进行 SQLite 编程的基础知识。你可能还需要...

  • SQLite基础知识

    SQLite SQLite是一款轻型的嵌入式关系型数据库,其最主要的特点就是轻量级、跨平台且占用资源非常低,可能只...

  • SQLite基础知识

    一、SQLite简介: SQLite是一款嵌入式的轻量关系型数据库。它占用资源非常低。在嵌入式设备中,可能只需要几...

  • SQLite基础知识

    1. SQLite中的事务处理是怎么做的? SQLite在进行增删改数据时都默认开启了事务,然后把SQL语句翻译成...

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

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

  • Android数据库高手(二)创建表和LitePal创建表

    上一篇文章中我们学习了一些Android数据库基础知识,和几个颇为有用的SQLite命令,都是直接在命令行操作的。...

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

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

  • SQLite的基础知识

    数据库SQLite的基础语法 SQLite 1. 什么是SQLite: (1) SQLite是一款轻型的嵌入式数据...

网友评论

      本文标题:SQLite基础知识学习

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