Sqlite查找记录并逐条取出

Sqlite查找记录并逐条取出,第1张

概述第一步:打开数据库     char *errMsg = NULL;     sqlite3 *db = 0;     int ret = 0; //连接数据库     ret = sqlite3_open("..\\Config\\Sqlite\\Config2.sqlite", &db);     if ( ret != SQLITE_OK )     {         AfxMessage

第一步:打开数据库

char *errMsg = NulL;

sqlite3 *db = 0;
int ret = 0; //连接数据库
ret = sqlite3_open("..\\Config\\sqlite\\Config2.sqlite",&db);
if ( ret != sqlITE_OK )
{
AfxMessageBox(L"不能打开Config2.sqlite!");
return;

}

相关:sqlite3.h中定义如下

/*
** CAPI3REF: Result Codes
** KEYWORDS: {result code deFinitions}
**
** Many sqlite functions return an integer result code from the set shown
** here in order to indicate success or failure.
**
** New error codes may be added in future versions of sqlite.
**
** See also: [extended result code deFinitions]
*/
#define sqlITE_OK 0 /* Successful result */
/* beginning-of-error-codes */
#define sqlITE_ERROR 1 /* sql error or missing database */
#define sqlITE_INTERNAL 2 /* 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 /* A malloc() Failed */
#define sqlITE_Readonly 8 /* Attempt to write a Readonly database */
#define sqlITE_INTERRUPT 9 /* Operation terminated by sqlite3_interrupt()*/
#define sqlITE_IOERR 10 /* Some kind of disk I/O error occurred */
#define sqlITE_CORRUPT 11 /* The database disk image is malformed */
#define sqlITE_NOTFOUND 12 /* 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 /* 2nd parameter to sqlite3_bind out of range */
#define sqlITE_NOTADB 26 /* file opened that is not a database file */
#define sqlITE_NOTICE 27 /* Notifications from sqlite3_log() */
#define sqlITE_WARNING 28 /* Warnings from sqlite3_log() */
#define sqlITE_ROW 100 /* sqlite3_step() has another row ready */
#define sqlITE_DONE 101 /* sqlite3_step() has finished executing */
/* end-of-error-codes */



int rc = sqlite3_prepare(db,"SELECT name from students",-1,&stmt,NulL); //返回上述的状态码,成功或者失败的原因

sqlite3_stmt *stmt; //结果集

while (sqlite3_step(stmt) == sqlITE_ROW)//逐条取出
{
CString str1 = L"";
str1 = (char *)(sqlite3_column_text(stmt,0));
AfxMessageBox(str1);
}

sqlite3_close(db);


测试程序见:


删除: char *errMsg = NulL; int ret = sqlite3_exec(db,"DELETE from Devicename",NulL,&errMsg);

总结

以上是内存溢出为你收集整理的Sqlite查找记录并逐条取出全部内容,希望文章能够帮你解决Sqlite查找记录并逐条取出所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/1170480.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存