• 附加数据库

Attach database filename as database_name;

主数据库默认为 "Main", 在使用Attach命令时, 不能将database_name指定为main;

当附加多个数据库, 并且存在相同名称的表时, 如果在命令时末指定数据库名(database_name), 则默认关联最先Attach的数据库;

建议操作相同名称的表时, 对应的数据库(database_name.table_name), 如, select * from MyDB.Table1;

  • 分离附加的数据库

Detach database database_name;

  • 数据库相关配置

pragma cache_size

设置缓冲区大小

pragma default_cache_size

在创建数据库之前通过此命令可永久设置缓冲区大小

pragma database_list

显示当前加载的数据库列表(包括Attach附加的数据库)

pragma index_info(index_name)

查看index_name对应的索引信息

pragma table_info(table_name)

查看table_name对应的表结构信息

pragma index_list(table_name)

列出table_name创建的所有索引信息

pragma Synchronous

设置数据库写同步的三种方式:

0: OFF

1: NORMAL

2: FULL (Default)

pragma auto_vacuum

设置数据库自动清理, 当大量删除数据时可自动缩小数据库文件大小, 但占用更多存储空间, 此命令必需在创建数据库之前设置

  • Sqlite_master

    Sqlite_master保存数据库所有表, 索引的元数据信息, 及创建的DDL, 可通过如下命令查看:

SELECT * FROM SQLITE_MASTER;

  • Explain query plan 查看SQL执行的流程, 可用于SQL性能分析, 改善SQL查询

EXPLAIN QUERY PLAN SELECT * FROM SQLITE_MASTER;

  • 利用null插入自动增长的值
  • SQLite在使用INSERT / UPDATE时处理冲突的五种方式:

replace

替换存在冲突的记录

ignore

SQLite继续执行但忽略冲突的记录

fail

Sqlite终止命令, 但不恢复发生冲突之前的修改记录

abort

Sqlite终止命令并恢复此命令发生冲突之前的修改

rollback

Sqlite执行回滚, 恢复到事务开始之前的状态

如: INSERT OR REPLACE INTO TABLE_NAME (FIELD_NAME) VALUES (FIELD_VALUE)

当执行命令的时候, 如遇到已存在记录, 则可直接在此记录上插入更新, 而不需要再插入前执行删除.

SQLite Tips的更多相关文章

  1. mono for android中使用dapper或petapoco对sqlite进行数据操作

    在mono for android中使用dapper或petapoco,很简单,新建android 类库项目,直接把原来的文件复制过来,对Connection连接报错部分进行注释和修改就可以运行了.( ...

  2. 创造tips的秘籍——PHP回调后门

    作者:Phithon 原文连接:https://www.leavesongs.com/PENETRATION/php-callback-backdoor.html 最近很多人分享一些过狗过盾的一句话, ...

  3. Android Tips – 填坑手册

    出于: androidChina   http://www.androidchina.net/3595.html 学习 Android 至今,大大小小的坑没少踩,庆幸的是,在强大的搜索引擎与无私奉献的 ...

  4. SQLite 之 C#版 System.Data.SQLite 使用

    简介 SQLite简介 SQLite,是一款轻型的关系型数据库.它的设计目标是嵌入式. 它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 C++.C ...

  5. Android--数据持久化之SQLite

    前言 对于一个应用程序而言,数据持久化是必不可少的,Android程序也不例外.这篇博客将介绍Android中关于SQLite的使用,SQLite是一种嵌入式的数据库引擎,专门适用于资源有限的设备上进 ...

  6. Cordova 8 架构使用sqlite - 谢厂节的博客 - 博客频道 - CSDN.NET - Google Chrome

    Cordova 8 架构使用sqlite 标签: androidcordova 2015-07-16 16:41 4302人阅读 评论(0) 收藏 举报  分类: IONIC/Cordova(18)  ...

  7. SQLite metadata

    http://www.devart.com/dotconnect/sqlite/docs/MetaData.html https://github.com/sqlitebrowser/sqlitebr ...

  8. freeswitch 把SIP注册信息数据库从SQLITE 改为MYSQL的方法

    实际线上应用中,在线注册人数超过4000 ,SQLITE就吃不消了,容易造成锁表,考虑转入MYSQL,查了下官网 超过转入了MYSQL. https://wiki.freeswitch.org/wik ...

  9. Android项目通过Android Debug Database实时查看本地Sqlite数据库内容

    前几天写Android项目时,想和Sqlyog那样图形化查看数据库中的文件,由于Android自带小型的Sqlite轻量级数据库,在查找方法时发现了一个特别简单适用的方法,纪录一下. 在android ...

随机推荐

  1. Day 23 类的继承,派生,组合,菱形继承,多态与多态性

    类的继承 继承是一种新建类的方式,新建的类称为子类,被继承的类称为父类 继承的特性是:子类会遗传父类的属性 继承是类与类之间的关系 为什么用继承 使用继承可以减少代码的冗余 对象的继承 python中 ...

  2. Day5 练习

    1. 2. 要加强对代码效率的思考 3. 4. 知识点:1)多变量的同时赋值 2)元素的不可修改性:(1,2)=(3,4)与(a,b)= (b,a)     联想指针.地址去理解  :可用id()或t ...

  3. 一次由于 MTU 设置不当导致的网络访问超时

    转自:http://weibo.com/ttarticle/p/show?id=2309404140904511340923 API 服务正常,但是调用总是超时.api端日志显示,响应速度很快. ​​ ...

  4. C#第三节课(2)

    运算符 using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.T ...

  5. [CodeForces1059E] Split the Tree

    树形DP. 用倍增处理出来每个点往上能延伸出去的最远路径,nlogn 对于每个节点,如果它能被后代使用过的点覆盖,就直接覆盖,这个点就不使用,否则就ans++,让传的Max改成dp[x] #inclu ...

  6. javascript/jquery获取地址栏url参数的方法

    1.jquery获取url window.location.href; 2.通过javascript是如何获取url中的某个参数 function getUrlParam(name) { var re ...

  7. APIO 2017 游记

    //第一次写游记,只是流水账...结果好像确实只去游了…… day-11 省选挂了,即将退役……(然而apio之后得知并没有退役,感谢放我一条活路)(吐槽出题人考完才造数据,题目没有子任务之类的玩意, ...

  8. 转载 - 跳跃的舞者,舞蹈链(Dancing Links)算法——求解精确覆盖问题

    出处:http://www.cnblogs.com/grenet/p/3145800.html 精确覆盖问题的定义:给定一个由0-1组成的矩阵,是否能找到一个行的集合,使得集合中每一列都恰好包含一个1 ...

  9. tcpip学习

    http://www.cnblogs.com/ggjucheng/archive/2012/08/18/2645324.html

  10. Qt中暂停线程的执行(主线程和工作线程共用一把锁,一旦主线程将它锁上,工作线程就无法运行了,这也是一个办法)

    在线程中定义一个信号量: QMutex pause; 把run()函数中循环执行的部分用信号量pause锁住:   void run()   {   while(1)   {   pause.lock ...