先打开数据库@H_502_9@test.db
E:\sqlite\tool\sqlite-3_6_22>@R_419_4777@@H_502_9@D:\Test\deBUG\test.db
sqlite> .backup D:\Test\deBUG\test.bak
注意:一定要用@H_502_9@\双斜杠@H_502_9@
二.如何恢复数据库先打开数据库@H_502_9@test.db
E:\sqlite\tool\sqlite-3_6_22>@R_419_4777@@H_502_9@D:\Test\deBUG\test.db
sqlite> .restore D:\Test\deBUG\test.bak
注意:一定要用@H_502_9@\双斜杠@H_502_9@
三.先判断表如果不存在,则再创建表@H_502_9@sql可以如下写,供参考:
create table if not exists student(ID integer primary key autoincrement,\
age smallint,anchor smallint);
四.如何查询@H_502_9@@R_419_4777@小工具或者@H_502_9@@R_419_4777@.dll动态链接库的版本执行@H_502_9@select sqlite_version();命令即可@H_502_9@
五.@H_502_9@@R_419_4777@的最新版本是(截止日期@H_502_9@2010年@H_502_9@2月@H_502_9@22日)3.6.22
六.针对@H_502_9@@R_419_4777@,两大优秀@H_502_9@C++封装库1.Cpp@R_419_4777@
http://www.codeproject.com/KB/database/CppSQLite.aspx
2.wx@R_419_4777@
http://sourceforge.net/projects/wxcode/files/Components/wxSQLite3/wxsqlite3-1.9.8.zip/download
七.如何在@H_502_9@windows下编译@H_502_9@@R_419_4777@@H_502_9@1.先从官网获取@H_502_9@sqlite-amalgamation-3_6_22.zip;
@H_502_9@2.接着从官网获取@H_502_9@sqlitedll-3_6_22.zip
下载编译好的@H_502_9@DLL,这里有我们需要的@H_502_9@@R_419_4777@.def该文件
@H_502_9@3.打开@H_502_9@VC新建一个“@H_502_9@Win32 Dynamic-link library”工程,命名为@H_502_9@:@R_419_4777@;
@H_502_9@4.在接下来的对话框中选择@H_502_9@"An empty DLL project",点@H_502_9@FINISH->OK;
@H_502_9@5.将@H_502_9@sqlite-amalgamation-3_6_22文件夹下的@H_502_9@@R_419_4777@.h以及@H_502_9@@R_419_4777@.c两个文件复制到工程文件夹下;
@H_502_9@@H_502_9@将@H_502_9@sqlitedll-3_6_22文件夹下的@H_502_9@@R_419_4777@.def该文件复制到工程文件夹下;
@H_502_9@6.在工程的@H_502_9@Source files中添加@H_502_9@@R_419_4777@.c文件;
@H_502_9@7.在工程的@H_502_9@Include files中添加@H_502_9@@R_419_4777@.h文件;
@H_502_9@8.在工程的@H_502_9@Resource files中添加@H_502_9@@R_419_4777@.def文件;
@H_502_9@9.针对如下问题:
@R_419_4777@.def : error LNK2001: unresolved external symbol @R_419_4777@_column_database_name
@R_419_4777@.def : error LNK2001: unresolved external symbol @R_419_4777@_column_database_name16
@R_419_4777@.def : error LNK2001: unresolved external symbol @R_419_4777@_column_origin_name
@R_419_4777@.def : error LNK2001: unresolved external symbol @R_419_4777@_column_origin_name16
@R_419_4777@.def : error LNK2001: unresolved external symbol @R_419_4777@_column_table_name
@R_419_4777@.def : error LNK2001: unresolved external symbol @R_419_4777@_column_table_name16
@R_419_4777@.def : error LNK2001: unresolved external symbol @R_419_4777@_table_column_Metadata
DeBUG/@R_419_4777@.lib : Fatal error LNK1120: 7 unresolved externals
在菜单【@H_502_9@Project】@H_502_9@-【@H_502_9@Settings…】@H_502_9@-【@H_502_9@C/C++】标签下的@H_502_9@category【@H_502_9@General】下
@H_502_9@Preprocessor deFinitions下@H_502_9@:
新增@H_502_9@2个编译选项,分别是:
THREADSAFE
sqlITE_ENABLE_ColUMN_MetaDATA
@H_502_9@10.往工程中添加@H_502_9@@R_419_4777@.def文件就是为生成@H_502_9@@R_419_4777@.lib文件;
@H_502_9@@R_419_4777@.lib是与@H_502_9@@R_419_4777@.dll动态链接库文件一起提供给软件开发者的;
八.如何解决@H_502_9@windows下的编译警告e:\sqlite\code\@R_419_4777@\@R_419_4777@.c(15385) : warning C4047: 'function' : 'voID ** ' differs in levels of indirection from 'long *'
e:\sqlite\code\@R_419_4777@\@R_419_4777@.c(15385) : warning C4022: 'InterlockedCompareExchange' : pointer mismatch for actual parameter 1
e:\sqlite\code\@R_419_4777@\@R_419_4777@.c(15385) : warning C4022: 'InterlockedCompareExchange' : pointer mismatch for actual parameter 2
e:\sqlite\code\@R_419_4777@\@R_419_4777@.c(15403) : warning C4047: 'function' : 'voID ** ' differs in levels of indirection from 'long *'
e:\sqlite\code\@R_419_4777@\@R_419_4777@.c(15403) : warning C4022: 'InterlockedCompareExchange' : pointer mismatch for actual parameter 1
e:\sqlite\code\@R_419_4777@\@R_419_4777@.c(15403) : warning C4022: 'InterlockedCompareExchange' : pointer mismatch for actual parameter 3
e:\sqlite\code\@R_419_4777@\@R_419_4777@.c(15403) : warning C4047: '==' : 'voID *' differs in levels of indirection from 'const int '
e:\sqlite\code\@R_419_4777@\@R_419_4777@.c(65536) : warning C4049: compiler limit : terminating line number emission
warning C4761: integral size mismatch in argument; conversion supplIEd
warning C4761: integral size mismatch in argument; conversion supplIEd
warning C4761: integral size mismatch in argument; conversion supplIEd
目前,还不想直接屏蔽警告错误。没有想到更好的方法。待定。@H_502_9@
有知道的朋友,还请指点。我将不甚感激。
总结以上是内存溢出为你收集整理的SQLite学习笔记之三全部内容,希望文章能够帮你解决SQLite学习笔记之三所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)