2019独角兽企业重金招聘Python工程师标准>>>

SQLite自增ID自段
使用方法为 INTEGER PRIMARY KEY AUTOINCREMENT
如:

CREATE   TABLE  21andy ( id  INTEGER   PRIMARY   KEY  AUTOINCREMENT, 21andy  VARCHAR ( 100 )  NOT   NULL , date DATE );

注意是AUTOINCREMENT, 和MySQL的写法不一样


SQLite清空表
SQLite没有TRUNCATE清空表命令,所以只能这样

DELETE   FROM  21andy;

SQLite 删除记录后, 自增ID置0

只能这样

DELETE   FROM  sqlite_sequence;

另外, 这个sqlite_sequence可以CRUD


SQLite 删除记录后, 不会释放空间
必须像这样

VACUUM

SQLite 分页查询
有两种写法:

Select   *   From  Account Limit  9  Offset  10 ;
SELECT   *   FROM  Account LIMIT  10 ,  9

他们两个的效果都是一样的,其中第一种写法比较清晰明了,即跳过10行,读取其后的9行数据.

SQLite批量插入数据
很不幸的事情是貌似SQLite只能一条一条的 执行插入,但是这是非常非常慢的行为,执行一条就是执行一次写入磁盘的操作,这实在是太可怕了.在SQLite里面执行批量插入,只能将插入操作放入到事 务当中去.示例如下:

BEGIN ;
CREATE   TABLE  t2(a  INTEGER , b  INTEGER , c  VARCHAR ( 100 ));
INSERT   INTO  t2  VALUES ( 1 , 59672 , ' fifty nine thousand six hundred seventy two ' );
INSERT   INTO  t2  VALUES ( 24999 , 89569 , ' eighty nine thousand five hundred sixty nine ' );
INSERT   INTO  t2  VALUES ( 25000 , 94666 , ' ninety four thousand six hundred sixty six ' );
COMMIT ; 

在SQLite当中一系列要进行多次写入操作的时候,建议放入到事务当中去,这个优化的性能提升是可以很明显感觉到的.用与不用的差别是非常大的.

SQLite 数据不存在INSERT,存在UPDATE
SQLite的SQL语法类MySQL,在SQLite里面有一个关键字 REPLACE,可以使用它达到目的:

REPLACE   INTO   [ table ]  (row1, row2)  VALUES  ( 2 ,  3 );

如果该表有一个主键,那么当主键值相等的时候,该行数据不存在执行插入,存在则执行更新操作.但是如果没有主键,那么它就执行的永远都是插入操作了.

SQLite 使用ISNULL函数
SQLite的SQL语法类不同于MySQL, 不可以用ISNULL,但可以用 IFNULL 直接代替

ifnull(null,0)

转载于:https://my.oschina.net/u/242614/blog/41616

【转】一些 SQLite技巧相关推荐

  1. SQLite中的内连接简化技巧

    SQLite中的内连接简化技巧 在SQLite中,通过内连接可以将两个表通过条件表达式关联起来,构成一个新记录集或视图.形式如下: SELECT ... FROM t1 JOIN t2 ON t1.c ...

  2. SQLite FTS5使用小技巧

    SQLite FTS5使用小技巧 在SQLite中,全文索引功能以扩展模块存在.使用全文索引,可以快速对大段文字进行搜索.SQLite提供FTS3.FTS4.FTS5三个模块.其中,FTS5是最新版的 ...

  3. Sqlite使用技巧集锦

    2019独角兽企业重金招聘Python工程师标准>>> 1.sqlite3_close() == SQLITE_BUSY ://5 在关闭卸载或删除数据库文件时会提示SQLITE_B ...

  4. power bi连接mysql_一起学微软Power BI系列-使用技巧(6) 连接Sqlite数据库

    阅读目录1.ODBC驱动 2.Power BI Desktop连接Sqlite 3.资源 好久没有研究Power BI了,看到高飞大神弄的东西,太惭愧了.今天有个小东西,数据在Sqlite里面,想倒腾 ...

  5. Sqlite查询优化技巧——将LIKE语句转换为比较语句 -转

    项目中用到了数据库,其中一个表有33万条数据.对这个表进行查询,执行类似"SELECT * FROM table1 where ds_key like 'asd%%'"这样的语句, ...

  6. Android应用开发技巧之更方便的使用Sqlite

    做应用的大多离不开数据库的支持,但是就是这么常用的对象,你有没有想过让他更方便的使用呢?什么是更方便,我的定义就是不用在每次需要用它的时候对SQL语句做过多的关心,我们应该更多的关心每一个字段的含义: ...

  7. 25个增强iOS应用程序性能的提示和技巧 — 中级篇

    本文由破船译自:raywenderlich 转载请注明出处:BeyondVincent的博客 _____________ 在开发iOS应用程序时.让程序具有良好的性能是非常关键的.这也是用户所期望的. ...

  8. Java性能优化技巧

    Java性能优化技巧 参考了些书籍,网络资源整理出来,适合于大多数Java应用 在JAVA程序中,性能问题的大部分原因并不在于JAVA语言,而是程序本身.养成良好的编码习惯非常重要,能够显著地提升程序 ...

  9. wp7——sqlite数据库操作 from:http://blog.csdn.net/wp_lijin/article/details/7370790

    wp7的数据库是个头痛的问题,因为它目前不支持数据库,当然,你也可以使用微软的收费数据库或者云端,或者独立存储,不过综合下,如果你要设计一个数据管理类软件,数据库是必不可少的,下面我介绍一下Sqlit ...

  10. 提高SQLite每秒INSERT的性能?

    优化SQLite是棘手的. C应用程序的大容量插入性能可以从每秒85次插入到每秒超过96,000次插入! 背景:我们将SQLite用作桌面应用程序的一部分. 我们将大量配置数据存储在XML文件中,这些 ...

最新文章

  1. C++ 实验 5.12
  2. 一些SQL性能优化的实用经验
  3. pca降维的基本思想_一文读懂 PCA 降维算法
  4. 课堂练习 5-22 团队如何做决定
  5. java jar命令_Java命令行之jar命令
  6. 如果你要开始一个大项目,不要使用Python...
  7. C#之json序列化与反序列化
  8. 分布式数据库的字符集
  9. 《大型网站技术架构:核心原理与案例分析》读书笔记-高可用
  10. java 有哪些框架_Java常用框架有哪些?这些框架有什么用?
  11. leetcode---栈
  12. 4ye含泪用python爬取了自己的公众号粉丝数据
  13. 计算机cpu最高温度,详解电脑cpu温度过高几种常用处理方法
  14. c语言游戏(C语言游戏装备)
  15. 零基础入门学习Python(31)--永久存储:腌制一缸美味的泡菜
  16. python 股票竞价数据_GitHub - TruthHun/auction-stock: 集合竞价选股(股票),基于收盘价与前收盘价的选股策略...
  17. python在线编程平台-在线python编程
  18. Sublime出现错误——“plugin_host has existed unexpectedly......”
  19. 关于深度学习移动化的思考
  20. 编写一个程序,分别使用字节流和字符流拷贝一个文本文件

热门文章

  1. Route66,GPS道路导航系统,我所用过的最大块头的手机软件
  2. iOS网络请求下来的数据显示时出现的问题
  3. OC Gen X Mac(一键制作黑苹果OpenCore EFI文件)v最新版
  4. 关于Mac电脑更新IP地址的解决方法!
  5. 苹果发布高端头戴式耳机AirPods Max12月15日发售
  6. k8s-kubectl进程源码分析
  7. 挨踢部落故事汇(10):技术晋升管理的心声
  8. mysql 拼音首字母排序
  9. linux ssh 多台机器无密码相互登陆方法二
  10. fancyhdr宏包设置latex页眉页脚