Sqlite3插入数据和查找数据

1.

//表单:Record(USN+有线MAC地址+无线MAC地址)
//查询
#define QUERY_SQL_SN "SELECT * FROM Record WHERE USN = '%s'"
#define QUERY_SQL_MAC "SELECT * FROM Record WHERE MAC = '%s'"
#define QUERY_SQL_WMAC "SELECT * FROM Record WHERE W_MAC = '%s'"
//插入
//#define INSERT_SQL_SN_MAC "INSERT INTO Record (USN, MAC, W_MAC, TIME) VALUES ('%s','%s','%s','%s');"
#define INSERT_SQL_SN_MAC "INSERT OR REPLACE INTO Record (USN, MAC, W_MAC, TIME) VALUES ('%s','%s','%s','%s');"
#define INSERT_SQL_SN_MAC_OLD "INSERT  INTO RepeatRecord (USN, MAC, W_MAC, TIME) VALUES ('%s','%s','%s','%s');" 
//insert or replace:如果不存在就插入,存在就更新
//insert or ignore:如果不存在就插入,存在就忽略

2.

   //NOT NULL - 非空
	//UNIQUE - 唯一
	//PRIMARY KEY - 主键
	//FOREIGN KEY - 外键
	//CHECK - 条件检查
	//DEFAULT - 默认
static const char* create_sql =	"CREATE TABLE  Record("\
								"USN  CHAR(20) PRIMARY KEY UNIQUE NOT NULL,"\
								"MAC  CHAR(20) UNIQUE,"\
								"W_MAC  CHAR(20) UNIQUE,"\
								"TIME  CHAR(20)) ;";

static const char* create_EntrySql =  "CREATE TABLE  RepeatRecord("\
	                                  "USN  CHAR(20) ,"\
	                                  "MAC  CHAR(20) ,"\
	                                  "W_MAC  CHAR(20) ,"\
	                                  "TIME  CHAR(20)) ;";
DB::DB(void):m_pDB(NULL)
{
}

DB::~DB(void)
{
	if (m_pDB)
	{
		sqlite3_close(m_pDB);
		m_pDB = NULL;
	}
}

bool DB::OpenDB(const char* name, sqlite3 **ppDB)
{
	int ret = sqlite3_open(name, &m_pDB);
	if (SQLITE_OK != ret)
	{
		AfxMessageBox(_T("打开数据库失败"));
		return false;
	}
	return true;
}

bool DB::CreateTable(const char* sql)
{
	if (!m_pDB || !sql) return false;
	char *errMsg = NULL
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值