当前位置: 首页 > news >正文

网站开发的广告词saas自助建站

网站开发的广告词,saas自助建站,常州网站建设代理商,在线代理appC/C语言中调用sqlite的函数接口来实现对数据库的管理(创建数据库、创建表格、插入数据、查询数据、删除数据等)。首先要编译好sqlite的库文件 :libsqlite3.a libsqlite3.la libsqlite3.so libsqlite3.so.0 libsqlite3.so.0.8.6 pkgconfig可执行文件 : sqlite3本次测试#xff…C/C语言中调用sqlite的函数接口来实现对数据库的管理(创建数据库、创建表格、插入数据、查询数据、删除数据等)。首先要编译好sqlite的库文件 :libsqlite3.a libsqlite3.la libsqlite3.so libsqlite3.so.0 libsqlite3.so.0.8.6 pkgconfig可执行文件 : sqlite3本次测试sqlite3的库文件目录是/usr/local/lib可执行文件sqlite3 的目录是 /usr/local/bin头文件sqlite3.h 的目录是 /usr/local/include用ls命令查看如下[rootlocalhost config]# ls /usr/local/liblibclamav.a libclamunrar_iface.a libclamunrar.so libsqlite3.solibclamav.la libclamunrar_iface.la libclamunrar.so.5 libsqlite3.so.0libclamav.so libclamunrar_iface.so libclamunrar.so.5.0.3 libsqlite3.so.0.8.6libclamav.so.5 libclamunrar_iface.so.5 libmstring.so pkgconfiglibclamav.so.5.0.3 libclamunrar_iface.so.5.0.3 libsqlite3.alibclamunrar.a libclamunrar.la libsqlite3.la此目录下包含库文件libsqlite3.a libsqlite3.la libsqlite3.so libsqlite3.so.0 libsqlite3.so.0.8.6 pkgconfig--------------------------------------------------------------------------------------------------开始sqlite编程1.下面是一个C程序的例子显示怎么使用 sqlite 的 C/C 接口. 数据库的名字由第一个参数取得且第二个参数或更多的参数是SQL 执行语句. 这个函数调用sqlite3_open()打开数据库,并且调用sqlite3_close()关闭数据库连接。程序一opendbslite.c:#include #include #include int main( void ){sqlite3 *db NULL;char *zErrMsg  0;int rc;//打开指定的数据库文件,如果不存在将创建一个同名的数据库文件rc  sqlite3_open(zieckey.db, db);if( rc ){fprintf(stderr, Cant open database: %s/n, sqlite3_errmsg(db));sqlite3_close(db);exit(1);}else printf (You have opened a sqlite3 database named zieckey.db successfully!/nCongratulations! Have fun ! ^-^ /n);sqlite3_close(db); //关闭数据库return 0;}[rootlocalhost liuxltest]# gcc -o opendbsqliteopendbsqlite.c -lsqlite3用-lsqlite3 选项就可以了(前面我们生成的库文件是 libsqlite3.so.0.8.6 等,去掉前面的lib和后面的版本标志就剩下 sqlite3 了所以是 -lsqlite3)--------------------------------------------------------------------------------------------------2.插入insert 在C语言中向数据库插入数据sqlite3_exec的函数原型说明如下int sqlite3_exec(sqlite3*, constchar*sql, sqlite_callback, void*, char**errmsg ); 程序二insert.c:#include #include #include sqlite3.h#define _DEBUG_int main( void ){sqlite3 *dbNULL;char *zErrMsg  0;int rc;//打开指定的数据库文件,如果不存在将创建一个同名的数据库文件rc  sqlite3_open(zieckey.db, db);if( rc ){fprintf(stderr, Cant open database: %s/n, sqlite3_errmsg(db));sqlite3_close(db);exit(1);}else printf(You have opened a sqlite3 database named zieckey.db successfully!/nCongratulations! Have fun ! ^-^ /n);//创建一个表,如果该表存在则不创建并给出提示信息存储在 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/n,zErrMsg);#endif//插入数据char* sql1  INSERT INTO /SensorData/ VALUES( NULL , 1 , 1 , 200605011206, 18.9 ); ;sqlite3_exec( db , sql1 , 0 , 0 , zErrMsg );char* sql2  INSERT INTO /SensorData/ VALUES( NULL , 1 , 1 , 200605011306, 16.4 ); ;sqlite3_exec( db , sql2 , 0 , 0 , zErrMsg );sqlite3_close(db); //关闭数据库return 0;}编译运行。查看是否插入数据[rootlocalhost liuxltest]# /usr/local/bin/sqlite3 zieckey.db select * fromSensorData--------------------------------------------------------------------------------------------------3. 查询:SELETE C语言中查询数据库中的数据。函数接口sqlite3_get_table( db , sql ,azResult , nrow ,ncolumn , zErrMsg );sqlite3_get_table函数原型说明如下int sqlite3_get_table(sqlite3*,constchar *sql,char***result,int*nrow,int*ncolumn,char**errmsg);result中是以数组的形式存放你所查询的数据首先是表的列属性再是数据。nrow,ncolumn分别为查询语句返回的结果集的行数(不包括列属性名一行)列数没有查到结果时返回0 程序三query.c#include #include #include sqlite3.h#define _DEBUG_int main( void ){sqlite3 *dbNULL;char *zErrMsg  0;int rc;rc  sqlite3_open(zieckey.db, db);if( rc ){fprintf(stderr, Cant open database: %s/n, sqlite3_errmsg(db));sqlite3_close(db);exit(1);}else printf(You have opened a sqlite3 database named zieckey.db successfully!/nCongratulations! Have fun ! ^-^ /n);//创建一个表,如果该表存在则不创建并给出提示信息存储在 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(zErrMsg  %s /n, 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 );int nrow  0, ncolumn  0;char **azResult; //二维数组存放结果//查询数据sql  SELECT * FROM SensorData ;sqlite3_get_table( db , sql , azResult , nrow , ncolumn , zErrMsg );int i  0 ;printf( row:%d column%d /n , nrow , ncolumn );printf( /nThe result of querying is : /n );for( i0 ; iprintf( azResult[%d]  %s/n, i , azResult[i] );//释放掉 azResult 的内存空间sqlite3_free_table( azResult );#ifdef _DEBUG_printf(zErrMsg  %s /n, zErrMsg);#endifsqlite3_close(db); //关闭数据库return 0;}这里用到了一个查询的语句是 SELECT * FROM SensorData ,编译运行[rootlocalhost liuxltest]# gcc -o query query.c -lsqlite3[rootlocalhost liuxltest]# ./queryYou have opened a sqlite3 database named zieckey.dbsuccessfully!Congratulations! Have fun ! ^-^zErrMsg (null)row:2 column5(row不包括列属性一行)The result of querying is :azResult[0] IDazResult[1] SensorIDazResult[2] SiteNumazResult[3] TimeazResult[4] SensorParameterazResult[5] 1azResult[6] 1azResult[7] 1azResult[8] 200605011206azResult[9] 18.9azResult[10] 2azResult[11] 1azResult[12] 1azResult[13] 200605011306azResult[14] 16.4zErrMsg (null)[rootlocalhostliuxltest]# *这里我们可以看到azResult 的前面 5 个数据正好是我们的表 SensorData的列属性之后才是我们要查询的数据。所以我们的程序中才有 incolumn 的判断条件for( i0 ;iprintf( azResult[%d] %s/n, i , azResult[i] );输出中有 zErrMsg (null) 这样的字句这是 zErrMsg保留的错误信息正如你所看到的zErrMsg 为空表明在执行过程中没有错误信息。-------------------------------------------------------------------------------------------------- 4.删除delete C语言中删除数据库中的特定的数据。程序四 delete.c#include #include #include sqlite3.h#define _DEBUG_int main( void ){sqlite3 *dbNULL;char *zErrMsg  0;int rc;rc  sqlite3_open(zieckey.db, db);if( rc ){fprintf(stderr, Cant open database: %s/n, sqlite3_errmsg(db));sqlite3_close(db);exit(1);}else printf(You have opened a sqlite3 database named zieckey.db successfully!/nCongratulations! Have fun ! ^-^ /n);//创建一个表,如果该表存在则不创建并给出提示信息存储在 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(zErrMsg  %s /n, 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 , 23 , 45 , 200605011306, 16.4 ); ;sqlite3_exec( db , sql , 0 , 0 , zErrMsg );sql  INSERT INTO /SensorData/ VALUES(NULL , 34 , 45 , 200605011306, 15.4 ); ;sqlite3_exec( db , sql , 0 , 0 , zErrMsg );int nrow  0, ncolumn  0;char **azResult; //二维数组存放结果//查询数据sql  SELECT * FROM SensorData ;sqlite3_get_table( db , sql , azResult , nrow , ncolumn , zErrMsg );int i  0 ;printf( row:%d column%d /n , nrow , ncolumn );printf( /nThe result of querying is : /n );for( i0 ; iprintf( azResult[%d]  %s/n, i , azResult[i] );(问此处不需要sqlite3_free_table( azResult );吗)//删除数据sql  DELETE FROM SensorData WHERE SensorID  1 ; ;sqlite3_exec( db , sql , 0 , 0 , zErrMsg );#ifdef _DEBUG_printf(zErrMsg  %s /n, zErrMsg);#endifsql  SELECT * FROM SensorData ;sqlite3_get_table( db , sql , azResult , nrow , ncolumn , zErrMsg );printf( /n/n/n/nrow:%d column%d  , nrow , ncolumn );printf( /nAfter deleting , the result of querying is : /n );for( i0 ; iprintf( azResult[%d]  %s/n, i , azResult[i] );//释放掉 azResult 的内存空间sqlite3_free_table( azResult );#ifdef _DEBUG_printf(zErrMsg  %s /n, zErrMsg);#endifsqlite3_close(db); //关闭数据库return 0;}编译运行。 从程序输出结果就可以看出在删除数据前我们有三条记录删除数据后我们发现数据库内记录少了1条。从而实现了我们的删除数据目的。
http://www.zqtcl.cn/news/927080/

相关文章:

  • 网站上怎样做轮播图网站后台乱码怎么办
  • 专业网站建设品牌策划商务网站建设与维护考试
  • 网站开发手机版WordPress如何清空评论
  • 公司怎么建立网站吗010网站建设
  • 网站制作找哪家公司好湖北专业网站建设大全
  • 广州建设网站是什么关系wordpress 插件位置
  • 网站建设工作室 怎么样做一个网站需要多少钱
  • 北京网站制作人才免费企业网站源码
  • 微信商城网站怎么做网站备案是先做网站还是做完了备案
  • 工商局网站查询入口wordpress 文章列表顺序
  • 可以做平面设计兼职的网站模板商城建站
  • 织梦网站如何做301跳转畅销营销型网站建设电话
  • 新网企业邮箱保定seo
  • 河南国控建设集团招标网站网上注册公司核名流程
  • 推推蛙网站建设云南网站开发费用
  • 网站没服务器行吗价格低廉怎么换个说法
  • 用wordpress编写网站完整网站开发视频教程
  • 电商型网站建设价格ppt制作网站
  • 东莞做个网站查询工商营业执照
  • 从网址怎么看网站的域名租用云服务器多少钱
  • 网站开发技术有个人网页首页设计图片
  • 一站式网站建设平台做电商网站需要做什么准备
  • 网站开发小程序快站模板
  • 江苏集团网站建设智慧养老网站开发
  • 外网网址可以做英语阅读的网站怎么原创视频网站
  • 宁波网站建设流程图自己做网站可以揽业务吗
  • 赤峰市建设网站东胜做网站
  • 有口碑的坪山网站建设微信扫一扫登录网站如何做
  • 自己建网站要花多少钱蓟县网站建设
  • 兖州中材建设有限公司网站wordpress免签约接口