VS2019 sqlite3

步骤:

1.新建MFC APPLICATION ,编辑框等等;

2.将SQlite3中的文件添加进文件夹,并将cppsqlite3U.h,sqlite3.h添加头文件列表中,将cppsqlite3U.cpp放入cpp文件列表中;

3.在stdafx.h中包含cppsqlite3U.h,sqlite3.h两个头文件,在cpp中就可以新建数据库。

注:在VS2019中新建MFC后CppSQLite3U.cpp 包含pch.h, CppSQLite3U.h中包含sqlite.h,

遇到错误提示:This function or variable may be unsafe时,在“属性”-“C/C++”-“预处理器”-“预处理器定义”中添加_CRT_SECURE_NO_WARNINGS即可。

遇到错误C4996,参考上次篇文章:https://www.cnblogs.com/Grouth-Diary/p/13476770.html

4.代码部分:

头文件定义变量:

   CppSQLite3DB m_db;

创建db文件、表格:

 1 CString strDBname, strsql;
 2     strDBname = _T("EquipInfo.db");
 3     try
 4     {
 5         m_db.open(strDBname);
 6         if(!m_db.tableExists(_T("Info")))
 7         {
 8             m_db.execDML(_T("CREATE TABLE Info(ComName nvarchar(100),")
 9                 _T("EquipVesion nvarchar(100),")
10                 _T("MonitorRetion nvarchar(100),")
11                 _T("ModuleSize nvarchar(100),")
12                 _T("ModuleType nvarchar(100),")
13                 _T("CammeraModel nvarchar(100),")
14                 _T("CammeraRetion nvarchar(100),")
15                 _T("ExpostionTime nvarchar(100),")
16                 _T("ElectricCurrent nvarchar(100),")
17                 _T("ISOorGain nvarchar(100)")
18                 _T(");"));
19         }
20         m_db.execDML(_T("BEGIN"));
21         strsql = _T("INSERT INTO Info VALUES('")
22             +comName+_T("','")
23             +equVersion+_T("','")
24             +moniRetion+_T("','")
25             +moduleSize+_T("','")
26             +moduleType+_T("','")
27             +camerModel+_T("','")
28             +camerRetion+_T("','")
29             +exposTime+_T("','")
30             +elecCurrent+_T("','")
31             +isoOrgain+_T("');");
32         m_db.execDML(strsql);
33         m_db.execDML(_T("COMMIT"));
34         m_db.close();
35     }
36     catch (CppSQLite3Exception ex)
37     {
38         AfxMessageBox(ex.errorMessage());
39     }

 

posted @ 2020-08-11 17:23  菜鸟要飞~  Views(1709)  Comments(0Edit  收藏  举报