SQLite 错误码整理

代码如下:

#define SQLITE_OK           0   /* 成功 | Successful result */
/* 错误码开始 */
#define SQLITE_ERROR        1   /* SQL错误 或 丢失数据库 | SQL error or missing database */
#define SQLITE_INTERNAL     2   /* SQLite 内部逻辑错误 | Internal logic error in SQLite */
#define SQLITE_PERM         3   /* 拒绝访问 | Access permission denied */
#define SQLITE_ABORT        4   /* 回调函数请求取消操作 | Callback routine requested an abort */
#define SQLITE_BUSY         5   /* 数据库文件被锁定 | The database file is locked */
#define SQLITE_LOCKED       6   /* 数据库中的一个表被锁定 | A table in the database is locked */
#define SQLITE_NOMEM        7   /* 某次 malloc() 函数调用失败 | A malloc() failed */
#define SQLITE_READONLY     8   /* 尝试写入一个只读数据库 | Attempt to write a readonly database */
#define SQLITE_INTERRUPT    9   /* 操作被 sqlite3_interupt() 函数中断 | Operation terminated by sqlite3_interrupt() */
#define SQLITE_IOERR       10   /* 发生某些磁盘 I/O 错误 | Some kind of disk I/O error occurred */
#define SQLITE_CORRUPT     11   /* 数据库磁盘映像不正确 | The database disk image is malformed */
#define SQLITE_NOTFOUND    12   /* sqlite3_file_control() 中出现未知操作数 | Unknown opcode in sqlite3_file_control() */
#define SQLITE_FULL        13   /* 因为数据库满导致插入失败 | Insertion failed because database is full */
#define SQLITE_CANTOPEN    14   /* 无法打开数据库文件 | Unable to open the database file */
#define SQLITE_PROTOCOL    15   /* 数据库锁定协议错误 | Database lock protocol error */
#define SQLITE_EMPTY       16   /* 数据库为空 | Database is empty */
#define SQLITE_SCHEMA      17   /* 数据结构发生改变 | The database schema changed */
#define SQLITE_TOOBIG      18   /* 字符串或二进制数据超过大小限制 | String or BLOB exceeds size limit */
#define SQLITE_CONSTRAINT  19   /* 由于约束违例而取消 | Abort due to constraint violation */
#define SQLITE_MISMATCH    20   /* 数据类型不匹配 | Data type mismatch */
#define SQLITE_MISUSE      21   /* 不正确的库使用 | Library used incorrectly */
#define SQLITE_NOLFS       22   /* 使用了操作系统不支持的功能 | Uses OS features not supported on host */
#define SQLITE_AUTH        23   /* 授权失败 | Authorization denied */
#define SQLITE_FORMAT      24   /* 附加数据库格式错误 | Auxiliary database format error */
#define SQLITE_RANGE       25   /* 传递给sqlite3_bind()的第二个参数超出范围 | 2nd parameter to sqlite3_bind out of range */
#define SQLITE_NOTADB      26   /* 被打开的文件不是一个数据库文件 | File opened that is not a database file */
#define SQLITE_ROW         100  /* sqlite3_step() 已经产生一个行结果 | sqlite3_step() has another row ready */
#define SQLITE_DONE        101  /* sqlite3_step() 完成执行操作 | sqlite3_step() has finished executing */
/* 错误码结束 */

(0)

相关推荐

  • sQlite常用语句以及sQlite developer的使用与注册

    前言 sQlite是开发中比较常用的轻量级数据库.通常只占据几百k的内存空间,所以在ios开发中,苹果将sQlite作为数据库应用在苹果开发中,当然,fmdb就另当别论了.这里主要是为了区分sQlite语句,以及mySql语句,以及Oracle之间的区别. sQlite的常用语句归纳 1.创建表语句 create table create table student( id integer primary key autoincrement, name varchar(20) not null,

  • SQLite3中的日期时间函数使用小结

    复制代码 代码如下: import sqlite3conn = sqlite3.connect('/tmp/sqlite.db')cur = conn.cursor() 接下来干嘛呢?建一张表吧.这里需要注意的是,SQLite不支持在创建表的同时创建索引,所以要分两步走,先创建表然后再创建索引 复制代码 代码如下: create_table_stmt = '''CREATE TABLE IF NOT EXISTS test_table ( id INTEGER PRIMARY KEY AUTOI

  • SQLite中的B-Tree实现细节分析

    SQLite在存储在外部的数据库是以B-Tree来组织的.关于B-tree的细节,参考 ** ** Donald E. Knuth, THE ART OF COMPUTER PROGRAMMING, Volume 3: ** "Sorting And Searching", pages 473-480. Addison-Wesley ** Publishing Company, Reading, Massachusetts. ** 基本思想是文件包含的每一页都包括N个数据库入口和N+1

  • SQLite 中文指南之FAQ第1/6页

    1. 如何创建自增字段? 2. SQLite 支持哪些数据类型? 3. 为什么能向 SQLite 数据库的整型字段中插入字符串? 4. 为什么 SQLite 认为表达式 '0'=='00' 为真? 5. 为什么 SQLite 不允许在同一张表里使用 '0' 和 '0.0' 作为两个不同的行的主键? 6. 为什么不能在 Linux box 中读取在 SparcStation 中创建的 SQLite 数据库? 7. 多个应用程序或者同一个应用程序的多个例程能同时存取同一个数据库文件吗? 8. SQL

  • sqlite3 top的查询及limit语法介绍

    其实,在sqlite3中没有top的语法结构,但在sqlite3中有相关的语法能实现跟top语法相同的功能,sqlite3 sql是用limit这样的语法来实现的: 如: 复制代码 代码如下: select * from table where name='_安静ゝ' order by id limit 0,10; 这个效果就相当于select top 10 * from table where name='_安静ゝ': 如果还有更精确的: 复制代码 代码如下: select * from ta

  • sqlite中文乱码问题原因分析及解决

    在VC++中通过sqlite3.dll接口对sqlite数据库进行操作,包括打开数据库,插入,查询数据库等,如果操作接口输入参数包含中文字符,会导致操作异常.例如调用sqlite3_open打开数据库文件,如果文件路径出现中文,就会导致打开失败.sqlite3_exec执行sql语句,如果包含中文对应字符就会变成乱码. 这是由于sqlite数据库使用的是UTF-8编码方式,而传入的字符串是ASCII编码或Unicode编码,导致字符串格式错误.解决方案是在调用sqlite接口之前,先将字符串转换

  • SQLite优化方法

    例如:向数据库中插入100万条数据,在默认的情况下如果仅仅是执行 sqlite3_exec(db, "insert into name values 'lxkxf', '24'; ", 0, 0, &zErrMsg); 将会重复的打开关闭数据库文件100万次,所以速度当然会很慢.因此对于这种情况我们应该使用"事务". 具体方法如下:在执行SQL语句之前和SQL语句执行完毕之后加上 rc = sqlite3_exec(db, "BEGIN;"

  • Android开发之SQLite的使用方法

    前言 SQLite是一种轻量级的小型数据库,虽然比较小,但是功能相对比较完善,一些常见的数据库基本功能也具有,在现在的嵌入式系统中使用该数据库的比较多,因为它占用系统资源很少.Android系统中也不例外,也是采用SQLite,本节中就学习下在andorid中怎样使用该数据库来存放数据,并且对SQLite完成简单的新建,更新,查询,删除等操作. 实验说明: Android中使用SQLite数据库时,需要用adb来辅助调试,如果想在windows下的cmd命令行中使用adb,必须先配置环境变量,我

  • Sqlite 常用函数 推荐

    1 .打开数据库: 说明:打开一个数据库,文件名不一定要存在,如果此文件不存在, sqlite 会自动创建.第一个参数指文件名,第二个参数则是定义的 sqlite3 ** 结构体指针(关键数据结构),这个结构底层细节如何,您不用管它. int sqlite3_open( const char *filename, /* Database filename (UTF-8) */ sqlite3 **ppDb /* OUT: SQLite db handle */ ); 返回值:表示操所是否正确 (

  • SQLite 错误码整理

    复制代码 代码如下: #define SQLITE_OK           0   /* 成功 | Successful result *//* 错误码开始 */#define SQLITE_ERROR        1   /* SQL错误 或 丢失数据库 | SQL error or missing database */#define SQLITE_INTERNAL     2   /* SQLite 内部逻辑错误 | Internal logic error in SQLite */#

  • 微信支付 :curl出错,错误码:60两个问题的解决

    如下是运行微信支付测试代码时出错代码: Warning: curl_setopt() expects parameter 2 to be long, string given in D:\wwwroot\weixinpaytest\pay\WxPay.JsApiPay.php on line 99   Fatal error: Uncaught exception 'WxPayException' with message 'curl出错,错误码:60' in D:\wwwroot\weixin

  • 微信企业号 根据错误码返回错误信息类封装

    微信企业号根据错误码返回错误信息类封装 微信开发中返回错误码每次需要查询错误返回码文档才知道具体的错误信息(查看返回的errormsg也可知道),因此封装一个 错误码返回的类来查看! 纯粹的体力劳动!!! <span style="font-size:14px;">package org.oms.wechat.utils; /** * 企业号根据错误码返回错误信息类 * @author sunlight * */ public class ErrorCodeText { p

  • 安装SQL2005 29506错误码的解决方案

    在windows7下安装SQL2005时会提示不兼容,需要安装SQL2005 SP3或更高的版本,不用管它,一路安装下去,等装完在开始菜单没有SQL Server Management Studio. 没关系,只要下载微软的"SQL Server Management Studio Express"就能解决 (地址是http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=c243a5a

  • IIS卸载后重装时提示:安装程序无法复制一个或多个文件 特定错误码是 0xe0000233

    IIS卸载后重装时提示: --------------------------- Windows 安装程序 --------------------------- 安装程序无法复制一个或多个文件.特定错误码是 0xe0000233.按"确定"以继续:或者按"取消",停止安装并且再试一次.如果继续,组件可能无法正常运行. --------------------------- 确定 取消 --------------------------- 网上找的解决办法都是说没

  • 基于errno返回值的对应错误码的详细介绍

    errno返回值的对应错误码<asm-generic/errno-base.h>#ifndef_ASM_GENERIC_ERRNO_BASE_H#define_ASM_GENERIC_ERRNO_BASE_H #defineEPERM1/*Operationnotpermitted*/#defineENOENT2/*Nosuchfileordirectory*/#defineESRCH3/*Nosuchprocess*/#defineEINTR4/*Interruptedsystemcall*

  • Android获取WebView加载url的请求错误码 【推荐】

    例如需求,我有一个WebView 加载一个url, 该url对应的网页本身自带下拉刷新 ,但是网页本身会有出现400 500 等异常请求错误码 这时候网页加载失败,页面本身的下拉是无法使用的,要求重新加载页面的话就需要在webview外层套一个android下拉控件(SwipeRefreshLayout) 这样导致下拉一定用的SwipeRefreshLayout的下拉 最终要求是如果页面加载成功的话,用页面本身的下拉,如果页面加载失败的话,用android下拉控件的下拉 ------------

  • Spring Boot 如何自定义返回错误码错误信息

     说明 •在实际的开发过程中,很多时候要定义符合自己业务的错误码和错误信息,而不是统一的而不是统一的下面这种格式返回到调用端 INTERNAL_SERVER_ERROR(500, "Internal Server Error"), 下面我们来看看如何将我们自定义的错误码和错误信息返回到调用端. 1 自定义错误码 •首先我们要定义一个枚举类 public enum ErrorEnum { /* * 错误信息 * */ E_20011(20011, "缺少必填参数"),

  • Laravel手动返回错误码示例

    设想到一个情景,如果新增数据库时用户提交的数据正确,也就是通过了验证,但是添加数据库时发生错误,比如: if(!$users->save()){ //新增数据库时发生错误 } 那么需要返回错误信息,这个时候怎么手动呢?找到了一个函数,特此记录,感觉够用了: $errors=array( 'message'=>"新增数据库发生错误,请稍后再试" ); // $errors 定义返回的错误信息 // 422 表示返回该信息的状态码 return new JsonResponse

  • laravel返回统一格式错误码问题

    背景 最近在学习开发一个安卓项目,后端接口项目开始用PHP的Yii2.0框架新启了个项目,后换成laravel5.5,最近看到laravel升级了新版本,于是又将项目更新到laravel6.4 在使用yii和laravel的过程中,两个框架对web-api都非常友好,也都对restful做了不同程度的支持,但是还是遇到了一些问题,下面以laravel6.4为例,简单描述下我遇到的问题. 问题一:访问接口返回页面代码 最典型的就是laravel new 一个项目后,在浏览器直接访问localhos

随机推荐