解决SQLite异常:library routine called out of sequence

在项目开发中,使用SQLite一不小心就会碰到各种DB异常,网上搜了下没有这方面的资料,写出来记录下。

异常信息:
android.database.sqlite.SQLiteMisuseException:
library routine called out of sequence: , while compiling: ......

解决这种异常有2个办法:
方法一:单例模式使用DB时,函数[方法]上加同步synchronized即可解决。

方法二:工厂模式使用DB也可以解决(或者在线程中new一个新的DB,再调用相关函数[方法])。

解决SQLite异常:library routine called out of sequence,布布扣,bubuko.com

时间: 2024-10-16 14:31:12

解决SQLite异常:library routine called out of sequence的相关文章

Xcode6:解决_NSURLAuthenticationMethodServerTrust异常问题

一.在使用Xcode6进行运行项目时,发现程序直接Crash了,控制台信息如下: dyld: Symbol not found: _NSURLAuthenticationMethodServerTrust Referenced from: /var/mobile/Applications/B60BF229-07AA-452C-BA0B-9128CDCA7E3A/EBOOK.app/EBOOK Expected in: /System/Library/Frameworks/CFNetwork.fr

解决Eclipse异常关闭后重启报 org.eclipse.swt.SWTException: Invalid thread access 的问题

. . . . . 很久没有写博客了,最近实在是太忙,一直想写点干货,但是一直没静下心来学习. 今天又在加班忙碌之中,结果谁知道越忙碌越出问题.先是 weblogic 没有正常启动,凭经验第一反应就是7001端口被其它程序占用了,然后通过命令查看之后,发现果然是被占用了,占用端口的竟然是Eclipse,查找占用端口的方式请移步至博主的另一篇文章<[windows]查询占用端口的程序——记一次解决webloigc启动失败的过程>. Eclipse之前是不占用7011端口的,这次占用估计可能是启动

解决Sqlite Developer过期的最简单办法(转自百度经验)

第一种方法是:打开注册表  开始-->运行-->输入regedit 依次打开目录:HKEY_CURRENT_USER\SharpPlus\SqliteDev 找到右侧的StartDate项,删除. 第二种方法更简单,开始--> 运行 -->cmd,或者是window+R组合键,调出命令窗口 复制:reg delete "HKEY_CURRENT_USER\SharpPlus\SqliteDev" /v "StartDate" /f 粘贴到窗口

解决SQLite中的 database is locked

前些时候,同事在站点服务端使用SQlite存储一些临时数据,但是在多人并发的时候Sqlite会抛出异常:The database file is locked , database is locked,而且这个是在客户生产环境下提示出来的,开发环境很难重现,同事实在没辙,竟然想发动所有研发同事通过操作软件重现问题,我只能呵呵了.既然是Sqlite的原因,直接写个小程序测试下sqlite不就行了,而且就算重现了,难不成要改Sqlite源码... Sqlite的特点: 简单(simple):SQLi

配置React Native环境及解决运行异常

一. 安装Homebrew: Homebrew的官网(多语言版本)简单明了地介绍了如何安装和使用这个工具,;并提供了自己的Wiki. brew的安装很简单,使用一条ruby命令即可,Mac系统上已经默认安装了ruby": ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 等待一段时间后会出现     Press RETURN to continue

Eclipse build error 解决方法The library &#39;*.jar&#39; contains native libraries that will not run on the dev

[2013-08-29 16:56:58 - jarsotest] The library 'wnp.jar' contains native libraries that will not run on the device. [2013-08-29 16:56:58 - jarsotest] The following libraries were found: [2013-08-29 16:56:58 - jarsotest]  - bin/classes/jni/wnptest/wnpj

解决java异常的方法:

解决java异常的方法:1.首先要把异常打印处理(有时有人会直接catch,然后不打印任何日志)2.然后分析使用的java api,自己是否熟悉,如果不熟悉,看看java 源码有什么注释可以帮助你来分析问题的原因3.上网搜资料(很多人很多时候上来就去网上搜,这种做法不可取,甚至搜了半天也没有解决问题,应该先看源码注释来分析)比如,java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util

解决SQLite数据库中文乱码问题

  关于SQLite中出现中文乱码的分析以及解决方案 我们在使用SQLite数据库时候,可能会发现,向数据库插入数据时候显示的是汉字,但通过SQLite读出来时却显示的乱码,这是因为SQLite数据库所支持的编码方式和我们程序中的编码方式不一样,SQLite数据库采用的是UTF-8编码方式,而我们在程序中常常使用的是宽字节uncoid编码方式,所以使用SQLite数据库读出来以后会显示乱码,就是因为编码方式不一样,举个例子,基于对话框的程序,我们要在listctrl控件上显示我们数据库中读入的数

解决sqlite删除数据后,文件大小不变问题(VACUUM)

删除表格的全部数据: DELETE FROM [Name] 当在sqlite中删除了大量数据后,数据库文件的大小还是那样,没有变.原因是:从Sqlite删除数据后,未使用的磁盘空间被添加到一个内在的”空闲列表”中用于存储你下次插入的数据.磁盘空间并没有丢失.但是也不向操作系统返回磁盘空间. 解决方法有以下两种:1,在数据删除后,手动执行SQL"VACUUM"命令,执行方式很简单.推荐使用.2,在数据库文件建成中,将auto_vacuum设置成“1”.但是第二个方法同样有缺点,只会从数据