zoukankan      html  css  js  c++  java
  • sqlite3- 入门日记1-初试体验

       今天下载了sqlite3,这一款轻量级数据库,大小才275KB,让我吃惊不己。良好的跨平台性,以及在嵌入式领域的广泛应用,决定得好好学习下。

    1.从网站下载了sqlite3 ,解压后放在D:\sqlite.里面有三个文件,分别是:sqlite3.def,sqlite3.dll,sqlite3.exe。

    1).sqlite3.def: 用于编译生成相应的LIB文件

    2).sqlite3.dll:提供sqlite所需的动态链接库文件。

    3).sqlit3e.exe:执行文件,用于执行数据库操作

    2. 示例:

    1)。打开一个cmd程序,进入sqlite目录,执行:

    d:\sqlite>sqlite3.exe my.db   -->创建一个数据库文件my.db

    sqlite3>.help    -->

    sqlite3>.width [column1_max_width] [column2_max_width] .....

    sqlite3>.output [filename] --->output the result to the special file

    sqlite3>..tables,可以看数据库中的所有表;
    sqlite3>.indices,可以列出一个指定表的所有索引;
    sqlite3>.schema,创建表和索引时候的create语句,也可以在后面指明表名;
    sqlite3>.databases,查看当前打开的所有数据库,通常是一个main一个tem

    sqlite3>.dump;  导出的SQL语句,可以放到ORACLE中去执行;

    sqlite3>.explain:  就是查询一条SQL语句最终解析出来的执行计划,对SQL语句调优很有用;

    sqlite3>.timeout: 默认超时时间是0,查询一张表或索引,发现表或索引被锁定,就立刻返回,不等待;

    3.局限性:

    1)sqlite只适合对单一文件进行读并发操作,不适合对其进行并发写事务。事务的局限性,使其应用受限,通常用于处理小型的事务。

    2)不支持外键约束; 
    3)对触发器的支持不是很完整; 
    4)对ALTER TABLE的支持不是很完整; 
    5)不支持嵌入式事务; 
    6)不支持RIGHT和FULL OUTER JOIN. 
    7)不支持视图的写更新操作; 
    8)不支持GRANT和REVOKE;

    9)不支持存储过程

    10)文件锁:sqlite对事务的并发控制是通过本地文件锁低级原语来进行的。若有部分数据残存于网络分区中,文件锁将失效。

  • 相关阅读:
    SGU 205. Quantization Problem
    BZOJ1009: [HNOI2008]GT考试
    SGU 204. Little Jumper
    Spring Aspect 获取请求参数
    springboot 是用拦截器Interceptor获取请求的控制器和请求的方法名
    spring boot Filter过滤器的简单使用
    Java 使用Query动态拼接SQl
    java 传入list集合 返回树形菜单,for循环遍历
    spring data jpa 的简单使用
    vue项目引入element
  • 原文地址:https://www.cnblogs.com/ballwql/p/1968012.html
Copyright © 2011-2022 走看看