SQlite 数据库增删改查-C编程简单实例
来源:互联网 发布:搜狗输入法 优化版 编辑:程序博客网 时间:2024/06/10 20:44
/*@brief 本程序测试sqlite数据库的增删改查*/ #include "sqlite3.h"#include <stdio.h>#include <string.h>#define _DEBUG_sqlite3 * pDB = NULL;//增加用户int AddUser(const char* sName,int sNameLen, const char* sAge,int sAgeLen);//删除用户int DeleteUser(const char* sName,int sNameLen);//修改用户int ModifyUser(const char* sName,int sNameLen, const char* sAge,int sAgeLen);//查找用户int SelectUser();int AddUser(const char* sName,int sNameLen, const char* sAge,int sAgeLen){char strSql[500] = {"\0"};char nameBuff[100] = {"\0"};char ageBuff[100] = {"\0"};strncat(nameBuff,sName,sNameLen);strncat(ageBuff,sAge,sAgeLen);sprintf(strSql,"insert into user(name,age)values('%s',%s);",nameBuff,ageBuff);#ifdef _DEBUG_printf("%d,strSql = %s\n",__LINE__,strSql);#endif char* cErrMsg; int nRes = sqlite3_exec(pDB , strSql ,0 ,0, &cErrMsg);#ifdef _DEBUG_ if(nRes != SQLITE_OK) {printf("%d,strSql = %s\n",__LINE__,strSql); }#endif return 1;}int DeleteUser(const char* sName,int sNameLen){#if 0 char strSql = ""; strSql += "delete from user where name='"; strSql += sName; strSql += "';";#endifchar strSql[500] = {"\0"};char nameBuff[100] = {"\0"};strncat(nameBuff,sName,sNameLen);sprintf(strSql,"delete from user where name='%s';",nameBuff);#ifdef _DEBUG_printf("%d,strSql = %s\n",__LINE__,strSql);#endif char* cErrMsg; int nRes = sqlite3_exec(pDB , strSql ,0 ,0, &cErrMsg);#ifdef _DEBUG_if(nRes != SQLITE_OK){printf("%d,strSql = %s\n",__LINE__,strSql);}#endif return 1;}int ModifyUser(const char* sName,int sNameLen, const char* sAge,int sAgeLen){#if 0 char strSql = ""; strSql += "update user set age ="; strSql += sAge; strSql += " where name='"; strSql += sName; strSql += "';";#endifchar strSql[500] = {"\0"};char nameBuff[100] = {"\0"};char ageBuff[100] = {"\0"};strncat(nameBuff,sName,sNameLen);strncat(ageBuff,sAge,sAgeLen);sprintf(strSql,"update user set age =%s where name='%s';",ageBuff,nameBuff);#ifdef _DEBUG_printf("%d,strSql = %s\n",__LINE__,strSql);#endif char* cErrMsg; int nRes = sqlite3_exec(pDB , strSql ,0 ,0, &cErrMsg);#ifdef _DEBUG_if(nRes != SQLITE_OK){printf("%d,strSql = %s\n",__LINE__,strSql);}#endif return 1;}static int UserResult(void *NotUsed, int argc, char **argv, char **azColName){int i = 0;for(i = 0 ; i < argc ; i++) { //printf("%s %s\n",azColName[i],argv[i]); printf("\t %s",argv[i]); }printf("\n"); return 0;}int SelectUser(){ char* cErrMsg; int nRes = sqlite3_exec(pDB, "select * from user;", UserResult , 0 , &cErrMsg); #ifdef _DEBUG_if(nRes != SQLITE_OK){printf("%d,%s\n",__LINE__,cErrMsg);}#endif return 1;}int main(int argc, char* argv[]){ char* cErrMsg; int nRes = sqlite3_open("test.db", &pDB);char sql[500];#ifdef _DEBUG_ if(nRes == SQLITE_OK) {printf("%d:Open db test.db success.\n",__LINE__); } else {printf("%d,%s,%d\n",__LINE__,cErrMsg,nRes); }#endifif(argc <= 1){printf("%d:Please enter your operation command!!\n\n",__LINE__);printf("(1)create:create table user.\n");printf("(2)add [name] [age]:add to table user.\n");printf("(3)del [name]:delet from table user.\n");printf("(4)modify [name] [age]:modify from table user.\n");printf("(5)show:show table user.\n\n");return -1;}//创建表if(0 == strcmp(argv[1],"create")){sprintf(sql,"%s"," CREATE TABLE user(name VARCHAR(50),age INTEGER);");nRes = sqlite3_exec( pDB , sql , 0 , 0 , &cErrMsg );#ifdef _DEBUG_if(nRes == SQLITE_OK){printf("%d:Creat table success,table name: user.\n",__LINE__);}else{printf("%d,%s,%d\n",__LINE__,cErrMsg,nRes);}#endif}#if 1//增加if(0 == strcmp(argv[1],"add")){AddUser(argv[2],strlen(argv[2]), argv[3],strlen(argv[3]));}//删除if(0 == strcmp(argv[1],"del")){DeleteUser(argv[2],strlen(argv[2]));}//修改if(0 == strcmp(argv[1],"modify")){ModifyUser(argv[2],strlen(argv[2]),argv[3],strlen(argv[3]));}//查看if(0 == strcmp(argv[1],"show")){printf("\t*name*\t*age*\n");SelectUser();}#endifsqlite3_close(pDB);return 0;}
[root@none:/mnt/nfs]# ./appsqlite 165:Open db test.db success.175:Please enter your operation command!!(1)create: create table user.(2)add [name] [age]: add to table user.(3)del [name]: delet from table user.(4)modify [name] [age]: modify from table user.(5)show: show table user.[root@none:/mnt/nfs]# ./appsqlite show165:Open db test.db success. *name* *age* vivo 123 xiaomi 8[root@none:/mnt/nfs]#
0 0
- SQlite 数据库增删改查-C编程简单实例
- iOS基础教程-SQLite数据库操作(二简单实例学生信息增删改查数据库操作)
- sqlite数据库增删改查
- SQLite数据库增删改查
- Android SQLite 实例—增删改查、数据库版本升级
- 数据库SQLite的增删改查简单的实现
- SQlite---SQLite数据库增删改查操作
- C语言操作sqlite数据库(增删改查)
- iOS object-c语言使用SQLite数据库增删改查
- 数据库:SQLite数据库的增删改查
- SQLite数据库---数据库的增删改查
- sqlite 个人写增删改查实例
- ASP.NET 连接数据库 增删改查简单实例
- ASP.NET 连接数据库 增删改查简单实例
- Anddroid Sqlite数据库编程-增删改查实例  -  棒槌网@Android开发论坛 - Powered by phpwind
- Android Sqlite简单增删查改
- C#Winfrom数据库增删改查实例--DataAdapter版
- C#Winfrom数据库增删改查实例--SQL操作版
- 3.8学习内容
- C++显式转换(3)-const_cast
- 3.8
- jQuery下ajax的使用模板
- 【$、%】JSP页面中各种标签的使用
- SQlite 数据库增删改查-C编程简单实例
- String相关题目(左移字符串、翻转单词序列)
- NOI2017模拟3.8 总结
- JavaSE基础复习-2
- HashMap分析
- 深入了解Android蓝牙Bluetooth——《进阶篇》
- 一次性验证码
- Python程序实现打开浏览器的两种方法
- AJAX——JSON数据格式