c/c++ 操纵sqlite

#include "stdafx.h"

#include <stdlib.h>
#include <string>
#include <iostream>
#include "sqlite3.h"
#pragma comment(lib,"sqlite3.lib")

using namespace std;

bool sqlitedbcreate(char* name)
{
	sqlite3* conn;
	if(SQLITE_OK != sqlite3_open(name,&conn))
	{
		cout<<"创建数据库失败:"<<name<<endl;
		return false;
	}
	if(SQLITE_OK != sqlite3_close(conn))
	{
		cout<<"关闭连接失败:"<<endl;
		return false;
	}
	return true;
}

bool sqlitetablecreate(char* dbname,char* tablename)
{
	sqlite3* conn;
	char* errormsg;
	if(SQLITE_OK != sqlite3_open(dbname,&conn))
	{
		cout<<"打开数据库失败:"<<dbname<<endl;
		return false;
	}
	string sqlsentence = "create table ";
	sqlsentence += tablename;
	sqlsentence += " ([id] int, [name] char(20))";
	if(SQLITE_OK != sqlite3_exec(conn,sqlsentence.c_str(),0,0,&errormsg))
	{
		cout<<"创建表失败:"<<tablename<<endl<<"错误:"<<errormsg<<endl;
		return false;
	}

	if(SQLITE_OK != sqlite3_close(conn))
	{
		cout<<"关闭连接失败:"<<endl;
		return false;
	}
	return true;

}

bool sqlitetableexec(char* dbname,char* insert)
{
	sqlite3* conn;
	char* errormsg;
	if(SQLITE_OK != sqlite3_open(dbname,&conn))
	{
		cout<<"打开数据库失败:"<<dbname<<endl;
		return false;
	}

	if(SQLITE_OK != sqlite3_exec(conn,insert,0,0,&errormsg))
	{
		cout<<"执行语句失败:"<<insert<<endl<<"错误:"<<errormsg<<endl;
		return false;
	}

	if(SQLITE_OK != sqlite3_close(conn))
	{
		cout<<"关闭连接失败:"<<endl;
		return false;
	}
	return true;
}

int sqlitecallback(void* data,int colcount,char** colvalues,char** colnames) 
{
	for(int i = 0; i<colcount; i++)
	{
		cout<<colvalues[i]<<"\t";
	}
	cout<<endl;
	return 0;
}


bool sqliteselect(char* dbname,char* select)
{
	sqlite3* conn;
	char* errormsg;
	if(SQLITE_OK != sqlite3_open(dbname,&conn))
	{
		cout<<"打开数据库失败:"<<dbname<<endl;
		return false;
	}

	if(SQLITE_OK != sqlite3_exec(conn,select,&sqlitecallback,0,&errormsg))
	{
		cout<<"执行语句失败:"<<select<<endl<<"错误:"<<errormsg<<endl;
		return false;
	}

	if(SQLITE_OK != sqlite3_close(conn))
	{
		cout<<"关闭连接失败:"<<endl;
		return false;
	}
	return true;
}

int _tmain(int argc, _TCHAR* argv[])
{
	sqlitedbcreate("student");
	sqlitetablecreate("student","studentname");
	sqlitetableexec("student","insert into studentname([id],[name]) values(1,'liu')");
	sqliteselect("student","select * from studentname");

	system("pause");
	return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值