学习SQLite

前端之家收集整理的这篇文章主要介绍了学习SQLite前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
一 命令行操作

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("查。%s\n",cErrMsg); 
				sqlite3_free(cErrMsg); 
				cErrMsg = NULL;
			}
			return FALSE;  
		}  

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

	return FALSE;
}
原文链接:https://www.f2er.com/sqlite/199587.html

猜你在找的Sqlite相关文章