Sqlite数据库及数据库知识点总结

前端之家收集整理的这篇文章主要介绍了Sqlite数据库及数据库知识点总结前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
sqlite数据库就是一个DLL文件,将它引用到你的项目里就可以了。不同的开发语言就不同的DLL文件,如果你是用.NET开发的,就去搜索System.Data.sqlite.dll这个文件。
至于下哪个文件,你自己看着办吧。
sqlite的DLL文件下载地址 http://www.sqlite.org/download.html
Source Code 
源代码,因为sqlite是开源的。
Documentation
sqlite的说明文件,不是程序。
Precompiled Binaries for Linux
Linux平台下的
Precompiled Binaries For Mac OS X (x86)
MAC平台下的。
Precompiled Binaries For Windows
最常用的,Windows平台下的。
sqlite的数据库管理工具下载地址:http://www.sqliteexpert.com/download.html
一般常见的数据库,如oracle,MysqLsqlServer等,都是在DML时都是行级锁的,不会是表级锁,所以并发处理效率快。
行级锁,一般是指排它锁,即被锁定行不可进行修改删除,只可以被其他会话select。行级锁之前需要先加表结构共享锁。
表级锁,一般是指表结构共享锁锁,是不可对该表执行DDL操作,但对DML操作都不限制。
根据锁的类型分,共有6种
LMODE 
1、NULL,可以某些情况下,如分布式数据库查询会产生此锁。
2、SS,表结构共享锁
3、SX,表结构共享锁+被操作的记录的排它锁
4、S, 表结构共享锁+所有记录共享锁
5、SRX 表结构共享锁+所有记录排它锁
6、X   表结构排它锁+所有记录排它锁
Q:行级锁和表级锁的区别?
锁定的范围不一样。
行级锁锁定的是相关的行,别人仍然可以操作该表的其他行;
而表级锁则锁定整个表,其他人对该表的访问会受到更多的限制。所以,二者的主要区别就是锁的粒度不一样,带来的结果及时并发能力的不同。锁的粒度越细,并发性越好。
Q:数据库中的DML,DDL,DCL操作分别是指什么?

DML----Data Manipulation Language 数据操纵语言
如insert,delete,update,select(插入、删除修改、检索)

DDL----Data Definition Language 数据库定义语言 
如 create procedure之类

DCL----Data Control Language 数据库控制语言
如grant,deny,revoke等,只有管理员才有这样的权限。
需要分清哪些命令是DML,哪些是DDL
DDL是数据定义语言,如drop,alter,truncate等都是DDL
insert,update,delete,merge等都是DML
在oracle里DML是可以rollback的,而DDL是不可以的
注意:
DML需要提交,而truncate是自动提交的,所以truncate是DDL

猜你在找的Sqlite相关文章