【SQLite】知识点概述
1.SQLite不与诸如MySQL,Oracle,PostgreSQL或SQL Server之类的客户端/服务器SQL数据库引擎竞争,SQLite与fopen()竞争,读写快35%。
2.SQLite数据库的大小限制为281 TB。
3.SQLite支持无限数量的同时读取。
4.在任何时间都只能允许一个程序写入。写入时会锁定数据库,锁定不会持续超过几十毫秒。可以写入排队;
5.零配置,系统崩溃或电源故障后,无需采取任何措施即可恢复。
6.无服务器
7.单个数据库文件
8.跨平台
9.紧凑,启用了所有功能的整个SQLite库的大小都小于500KiB
10.向后兼容,新版本的SQLite可以读取和写入较旧的数据库文件。
11.清单输入,大多数SQL数据库引擎的数据类型与表中的每一列相关联,并且仅允许将该特定数据类型的值存储在该列中。SQLite通过使用清单类型放宽了此限制。在清单类型中,数据类型是值本身的属性,而不是值存储在其中的列的属性。(此规则有一些例外:INTEGER PRIMARY KEY列只能存储整数。SQLite尝试在可能的情况下将值强制转换为该列的声明数据类型。)
12.可变长度记录,但是对于大多数表,如果您声明一列为VARCHAR(100),则数据库引擎将分配100字节的磁盘空间,而不管您实际上在该列中存储了多少信息。相反,SQLite仅使用实际需要的磁盘空间来连续存储信息。如果将单个字符存储在VARCHAR(100)列中,则仅消耗单个字节的磁盘空间。SQLite允许您将2000个字符的字符串存储到VARCHAR(50)类型的列中。其他SQL实现可能会抛出错误或截断字符串。SQLite存储整个2000个字符的字符串,而不会丢失任何信息,并且不会产生任何警告。
13.可读的源代码,SQLite的源代码使普通程序员易于阅读和访问。
14.公共区域,核心源代码的任何部分均未主张版权,这意味着任何人都可以使用SQLite源代码合法地做他们想做的任何事情。
15.SQLite没有单独的BOOLEAN数据类型。
16.SQLite没有单独的DATETIME数据类型。As a TEXT string in the ISO-8601 format. Example: '2018-04-02 12:13:46'. Or unix time(As an INTEGER number of seconds since 1970)
17.SQLite不知道所有unicode字符的大小写区别。
18.SQL语言包含很多关键字。大多数SQL实现都不允许将关键字用作标识符(表或列的名称),但是SQLite可以。
19.AUTOINCREMENT(自动递增)与MySQL的工作方式不同
May you do good and not evil
May you find forgiveness for yourself and forgive others
May you share freely, never taking more than you give.
【SQLite】知识点概述的更多相关文章
- java多线程知识点概述
这里只起一个概述的作用,极其简单的列一下知识点,需要在脑海中过一下,如果哪些方面不熟悉的话,建议利用网络资源去学习. 1.线程.进程概念 概念 线程状态及其转换 2.死锁.预防.解决 3.jdk线程实 ...
- redis 系列2 知识点概述
一.概述 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表 ...
- ExtJs知识点概述
1.前言 ExtJS的前身是YUI(Yahoo User Interface).经过不断的发展与改进,ExtJS现在已经成功发布到了ExtJS 6版本,是一套目前最完整和最成熟的javascript基 ...
- iOS中SQLite知识点总结2
数据库(SQLite) 01-多表查询 格式:select 字段1,字段2,... from 表名1,表名2; 别名:select 别名1.字段1 as 字段别名1,别名2.字段2 as 字段别名2, ...
- iOS中SQLite知识点总结1
数据库(SQLite) 01-数据库简介 1.什么是数据库 数据库(Database)是按照数据结构来组织,存储和管理数据的仓库 2.数据库的分类 关系型数据库(主流) PC端:Oracle/MySQ ...
- Linux-系统编程-知识点概述
1.基本指令和5个背景知识(os.env.file.shell.权限) 2.开发环境:(vim.gcc.g++.gdb.ctags.make.Makefile.procbar) 3.进程1: 进程的基 ...
- cookie知识点概述
cookie是什么 这个讲起来很简单,了解http的同学,肯定知道,http是一个不保存状态的协议,什么叫不保存状态,就是一个服务器是不清楚是不是同一个浏览器在访问他,在cookie之前,有另外的技术 ...
- 前端读者 | ES6知识点概述
本文来自 @羯瑞 整理 ES6,并不是一个新鲜的东西,ES7.ES8已经赶脚了.但是,东西不在于新,而在于总结. 变量的新定义 let 和 const 在ES6没有被普及时,我们会用的变量定义的方法是 ...
- Android开发工程师文集-1 小时学会SQLite
前言 大家好,给大家带来Android开发工程师文集-1 小时学会SQLite的概述,希望你们喜欢 内容 什么是Sqlite: 效率高,开源,小型,程序驱动,支持事务操作,无数据类型,可嵌入的关系型数 ...
随机推荐
- Android 面试必备 - 系统、App、Activity 启动过程“一锅端”
Android 系统启动过程 从系统层看: linux 系统层 Android系统服务层 Zygote 从开机启动到Home Launcher: 启动bootloader (小程序:初始化硬件) 加载 ...
- 【Git】3. Git重要特性-分支操作,合并冲突详解
一.分支介绍 在版本控制过程当中,有时候需要同时推进多个任务,这样的话,就可以给每个任务创建单独的分支. 有了分支之后,对应的开发人员就可以把自己的工作从主线上分离出来,在做自己分支开发的时候,不会影 ...
- Python批量图片去水印,提高工作效率
平常工作中,有时为了采用网络的一些素材,但这些素材往往被打了水印,如果我们不懂PS就无法去掉水印,或者无法批量去掉水印.这些就很影响我们的工作效率. 今天我们就一起来,用Python + OpenC ...
- [Python] 可变/不可变类型 & 参数传递
与c/c++不同,Python/Java中的变量都是引用类型,没有值类型 Python赋值语句由三部分构成,例如: int a = 1 类型 标识 值 标识(identity):用于唯一标识 ...
- 用JIRA管理你的项目——(三)基于LDAP用户管理
JIRA提供了基于LDAP方式的用户管理,也就是用户密码的管理交给LDAP,而JIRA只管理用户在系统中的角色. 要打开JIRA的LDAP设置,首先需要验证下你的LDAP服务是否正常! 几乎有所有的L ...
- python 运算及注释
""" 上面的两行代码,在2.0的python中,若想执行含有汉字的代码,是必不可少的,且两行代码必写在单个py文件最上方,之间不可有任何字节.且该两行代码,可在pych ...
- [Java] HOW2J(Java初级)
变量 基本类型:整型(byte.short.int.long).字符型(char).浮点型(float.double).布尔型(boolean) 给基本类型赋值的方式叫字面值 字符的字面值放在单引号中 ...
- [bug] mysql:Unknown system variable 'tx_isolation'
原因: 电脑上安装mysql与jdbc驱动mysql-connector-java.jar版本不匹配 解决: 导入与mysql版本匹配的mysql-connector-java.jar即可
- 每天一个linux命令(49):at命令 atrm删除作业,由作业号标识。
atq命令 例如:从现在起三天后的下午四点运行作业at 4pm + 3 days:在July 31上午十点运行作业at 10am July 31:明天上午一点运行作业at 1am tomorrow. ...
- 【例 3】 修改 bols 文件的 atime 和 mtime。 [root@localhost ~]# touch -d "2017-05-04 15:44" bols
Linux touch命令:创建文件及修改文件时间戳 < Linux删除空目录(rmdir命令)Linux在文件之间建立软/硬链接(ln命令) > <Linux就该这么学>是一 ...