加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

学习SQLite

发布时间:2020-12-12 19:43:52 所属栏目:百科 来源:网络整理
导读:一 命令行操作 1. 下载地址:http://www.sqlite.org/download.html 2. 下个windows 平台的shell;加压到D盘下 3. windows cmd命令行中切到sqlite目录下,创建ZCamera.db数据库 4.创建个表ZUser 5. 插入数据 二 可视化工具 1.下载地址:http://www.sqliteexpe
一 命令行操作

1. 下载地址:http://www.sqlite.org/download.html

2. 下个windows 平台的shell;加压到D盘下

3. windows cmd命令行中切到sqlite目录下,创建ZCamera.db数据库

4.创建个表ZUser

5. 插入数据

二 可视化工具
1.下载地址:http://www.sqliteexpert.com/download.html 2.设置主键
Add弹出:
三 开发
1. 下载源码包(含sqlite3 .h)和dll包(含sqlite.dll和sqlite.def) 2. 生成.lib文件
得到lib后,就可以在自己的程序里使用它了。 3. 主要使用接口 开
BOOL CDBDevList::Init(string sDBFile)
{
	LOCK lck(m_Mtx);
	m_sDBFile = sDBFile;

	if (m_pDB != NULL){
		sqlite3_close(m_pDB);
		m_pDB = NULL;
	}
	//路径采用utf-8编码  
	int nRes = sqlite3_open(sDBFile.c_str(),&m_pDB);  
	if (nRes != SQLITE_OK)  
	{  
		TRACE("CDBDevList::Init 打开数据库失败!");
		return FALSE;
	}  
	return FALSE;
}

BOOL CDBDevList::DelInit()
{
	LOCK lck(m_Mtx);
	if (m_pDB != NULL){
		sqlite3_close(m_pDB);
		m_pDB = NULL;
		TRACE("关闭数据库!n");
	}
	return TRUE;
}


static int QueryResult(void *NotUsed,int argc,char **argv,char **azColName)  
{  
	TRACE("n");
	for(int i = 0 ; i < argc ; i++)  
	{  	
		TRACE("%s,",argv[i]);
	}  
	TRACE("n");
	return 0;  
}   

BOOL CDBDevList::Query(string sLocalId)
{
	if (m_pDB == NULL) {
		TRACE("查。数据库未初始化!");
		return FALSE;
	}

	TCHAR strSql[512] = {0};
	try{
		_stprintf_s(strSql,512,"select * from DevList where localId='%s';",sLocalId.c_str());
		char* cErrMsg;  
		int nRes = sqlite3_exec(m_pDB,strSql,QueryResult,(void *)this,&cErrMsg);  
		if (nRes != SQLITE_OK)    
		{  
			if (cErrMsg) {
				TRACE("查。%sn",cErrMsg); 
				sqlite3_free(cErrMsg); 
				cErrMsg = NULL;
			}
			return FALSE;  
		}  

		return TRUE;
	}
	catch(...)
	{
		TRACE("查。捕获异常!n");
	}

	return FALSE;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读