大家好,今天小编关注到一个比较有的话题,就是关于c语言sqlite的问题,于是小编就整理了2个相关介绍c语言sqlite的解答,让我们一起看看吧。
sqlite判断表中字段是否存在?
charcSql[128];memset(cSql,0,128);intnrow=0;intncolumn=0;intrc=-1;char**chAllResult;//二维数组存放结果char*zErrMsg=0;sprintf(cSql,34;select*from%s",chTableName);rc=sqlite3_get_table(pSqlite,cSql,&chAllResult,&nrow,&ncolumn,&zErrMsg)
;if(SQLITE_OK==rc){for(inti=0;i<ncolumn;i++)
{//记录列表头(字段名)
m_vecColummnHead.push_back(chAllResult[i]);}}m_vecColummnHead是一个VECTER类型,这里面存储的是当前表的所有字段名,用你的字段名在这里面遍历查找就可以了。
SQLite怎样导入sql文件?
导入时把生成索引给关掉,应该能快一点.
不要一边导入一边建立索引. 8G数据,应该也不那么慢了.
把sql语句文件读取出一部分看看,建表语句中,应当有建立索引的部分,删掉它!
只做建表和插入数据两件事.
还有,看看数据库有没有外键? 尽量在插入数据过程中去掉外键关联. 等数据插入完成之后再加索引和外键,应该能提高很多读写性能.
截取一部分数据,例如100Mb. 插入一下试试,可以预先对整体时间有一个预期.
还有,真的要弄台好点的电脑,或者去借一台,等把数据导入完成之后,把msyql的库文件直接复制出来放自己机器上跑就好.
emm.. 再追加点信息,要先搞明白,sql原文件里,到底都执行了哪几类操作? 可能需要你用c之类写点小工具,或者别的什么语言,分块读取并处理文件. 8G.. 嗯,还好. 现在内存都够大,否则你都没法直接用软件打开了. 只有8G也可以直接用软件打开看. 停掉索引真的可以大幅度加快插入数据的速度. 建议试一试!
到此,以上就是小编对于c语言sqlite的问题就介绍到这了,希望介绍关于c语言sqlite的2点解答对大家有用。