sqlite环境下的数据库
发布时间:2020-12-12 19:49:28 所属栏目:百科 来源:网络整理
导读:sqlite3数据库之处女作 By—it_zujun #include stdio.h#include stdlib.h#include sqlite3.h#include string.h#define LEN 20#define TAB_NAME "room"#define SIZE 1024sqlite3 *db = NULL;char** result;char buffer[1024]; //send buffer to Androidint nx
sqlite3数据库之处女作
By—it_zujun #include <stdio.h> #include <stdlib.h> #include <sqlite3.h> #include <string.h> #define LEN 20 #define TAB_NAME "room" #define SIZE 1024 sqlite3 *db = NULL; char** result; char buffer[1024]; //send buffer to Android int nx,ny; char* errmsg; int ret; char tab[20]; //sql command sqace char a[7] = {'"','"','(',')',',';','*'}; char* create_tab_name(char tab[20]); //build tab command tab[20] void create_tab(sqlite3* db); //do create_tab command char* cmd_insert(char tab[20],char* device,char* status); char* sql_insert(char* device,char* status); char* cmd_delete(char tab[20],char* device); void sql_delete(char* device); char* sql_to_android(char tab[20]); char* sql_to_android(char tab[20]) { int i,j; memset(tab,LEN); strcat(tab,"select * from room"); ret = sqlite3_get_table(db,tab,&result,&ny,&nx,&errmsg); if (ret != SQLITE_OK) printf("serch the room data failedn"); else printf("serch thr room data succeedn"); printf("nx = %dn",nx); printf("ny = %dn",ny); memset(buffer,SIZE); strcat(buffer,"R"); for(i = 1; i< ny+1; i++) { strcat(buffer,":"); for (j=0; j< nx; j++) { strcat(buffer,result[i*nx+j]); } } /* for (i= nx; i<(ny+1)*nx; i++) { strcat(buffer,":"); strcat(buffer,result[i]); printf("string: %sn",result[i]); } */ printf("send_to_android: %sn",buffer); } char* cmd_update(char* device,char* sta) { memset(tab,"update room set sta = "); strncat(tab,&a[0],1); strcat(tab,sta); strncat(tab," where device = "); strncat(tab,device); strncat(tab,1); strncat(tab,&a[5],1); printf("string = %sn",tab); return tab; } void sql_update(char* device,char* sta) { cmd_update(device,sta); ret = sqlite3_exec(db,NULL,&errmsg); if (ret != SQLITE_OK) printf("sql update failedn"); else printf("sql update succeedn"); return; } char* cmd_search(char tab[20],char* device) { /* select * from room where device = %s */ memset(tab,"select * from room where device = "); strcat(tab,device); printf("string: %sn",tab); return tab; } void sql_search(char* device) { ret = sqlite3_exec(db,&errmsg); if (ret != SQLITE_OK) printf("sql search failedn"); else printf("sql search succeedn"); return; } char* cmd_delete(char tab[20],char* device) { memset(tab,"delete from room where device = "); strcat(tab,tab); return tab; } void sql_delete(char* device) { cmd_delete(tab,device); ret = sqlite3_exec(db,&errmsg); if (ret != SQLITE_OK) printf("sql delete failedn"); else printf("sql delete succeedn"); return; } char* cmd_insert(char tab[20],char* status) { memset(tab,"insert into room values"); strncat(tab,&a[2],1); // ( strncat(tab,1); // " strcat(tab,device); // device strncat(tab,&a[1],1); // " strncat(tab,&a[4],1); //,strncat(tab,status); // status strncat(tab,&a[3],1); // ) strncat(tab,1); // ; return tab; } char* sql_insert(char* device,char* status) { cmd_insert(tab,device,status); ret = sqlite3_exec(db,&errmsg); if (ret != SQLITE_OK) printf("sql insert failedn"); else printf("sql insert successen"); return; } void tab_insert(sqlite3* db,char* status) { ret = sqlite3_exec(db,&errmsg); if (ret != SQLITE_OK) printf("create room tab failednyou have created tab !!!!!!n"); else printf("crate root tab succeedn"); } char* create_tab_name(char tab[20]) { memset(tab,"create table "); strcat(tab,TAB_NAME); strcat(tab,"(device varchar(2),sta varchar(1));"); return tab; } void create_tab(sqlite3* db) { create_tab_name(tab); ret = sqlite3_exec(db,&errmsg); if (ret != SQLITE_OK) { printf("create room tab failednyou have created tab !!!!!!n"); } else { printf("crate root tab succeedn"); } return; } int main(int argc,char *argv[]) { ret = sqlite3_open("uwan.db",&db); if (SQLITE_OK != ret) { printf("open uwan.db failedn"); exit(0); } else { printf("open uwan.db succeedn"); } create_tab(db); sql_insert("11","N"); sql_insert("12","N"); sql_insert("13","N"); sql_insert("14","F"); sql_insert("15","F"); // sql_delete("14"); cmd_search(tab,"11"); sql_to_android(tab); sql_update("13","F"); sql_search("12"); sqlite3_close(db); printf("close uwan.db succedn"); return 0; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |