用C++写入外部变量:javastring类型的赋值 sql = "insert into插入sqlite 数据库中为什么只有一个字符?

插入:insert刚刚我们知道了怎么调用 sqlite3 的C/C++的API函数接口,下面我们看看怎么在C语言中向数据库插入数据。好的,我们现编辑一段c代码,取名为 insert.c// name: insert.c// This prog is used to test C/C++ API for sqlite3 .It is verysimple,ha !// Author : zieckey All rights reserved.// data : 2006/11/18#include #include #include "sqlite3.h"#define _DEBUG_int main( void ){sqlite3 *db=NULL;char *zErrMsg = 0;int rc;rc = sqlite3_open("zieckey.db", &db);//打开指定的数据库文件,如果不存在将创建一个同名的数据库文件if( rc ){fprintf(stderr, "Can't open database: %s", sqlite3_errmsg(db));sqlite3_close(db);exit(1);}else printf("You have opened a sqlite3 database named zieckey.dbsuccessfully!Congratulations! Have fun ! ^-^");//创建一个表,如果该表存在,则不创建,并给出提示信息,存储在 zErrMsg 中char *sql = " CREATE TABLE SensorData(ID INTEGER PRIMARY KEY,SensorID INTEGER,SiteNum INTEGER,Time VARCHAR(12),SensorParameter REAL);" ;sqlite3_exec( db , sql , 0 , 0 , &zErrMsg );#ifdef _DEBUG_printf("%s",zErrMsg);#endif//插入数据sql = "INSERT INTO "SensorData" VALUES( NULL , 1 , 1 ,'200605011206', 18.9 );" ;sqlite3_exec( db , sql , 0 , 0 , &zErrMsg );sql = "INSERT INTO "SensorData" VALUES( NULL , 1 , 1 ,'200605011306', 16.4 );" ;sqlite3_exec( db , sql , 0 , 0 , &zErrMsg );sqlite3_close(db); //关闭数据库return 0;}好的,将上述代码写入一个文件,并将其命名为 insert.c 。解释:sqlite3_exec的函数原型说明如下:int sqlite3_exec(sqlite3*,const char *sql,sqlite_callback,void *,char **errmsg);编译:[root@localhost temp]# gcc insert.c -lsqlite3-L/usr/local/sqlite3/lib -I/usr/local/sqlite3/includeinsert.c:28:21: warning: multi-line string literals aredeprecated[root@localhost temp]#执行[root@localhost temp]# ./a.out./a.out: error while loading shared libraries:libsqlite3.so.0: cannot open shared object file: No such file ordirectory[root@localhost temp]#同样的情况,如上文处理方法:[root@localhost temp]# exportLD_LIBRARY_PATH=/usr/local/sqlite3/lib:$LD_LIBRARY_PATH[root@localhost temp]# ./a.outYou have opened a sqlite3 database named zieckey.dbsuccessfully!Congratulations! Have fun ! ^-^(null)(null)(null)[root@localhost temp]#运行成功了,好了,现在我们来看看是否插入了数据[root@localhost temp]# /usr/local/sqlite3/bin/sqlite3zieckey.dbSQLite version 3.3.8Enter ".help" for instructionssqlite> select * from SensorData;1|1|1|200605011206|18.92|1|1|200605011306|16.4sqlite>哈哈,已经插入进去了,不是吗?很简单是不?
阅读终点,创作起航,您可以撰写心得或摘录文章要点写篇博文。去创作
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
}

我要回帖

更多关于 javastring类型的赋值 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信