23.封装之后的程序
代码:
/************************************************************************************************************************************************************************************************************************
****************************************************************************************************************************************************************************************************************************/
void sqlite3_input(char *a,char *b,char *c,char *d )//把用户接受的 写入数据库 a ip b port c : name d : 信息
int res =sqlite3_open("stu1.db",&studb);// 打开数据库的函数 sqlite3 里面的 agrv[1] (参数传入)
//printf("sqlite3_Open ok\n");//打开成功
printf("sqlite_open error\n");//打开失败
printf("errmsg:%s \n",sqlite3_errmsg(studb));//错误信息的返回 函数errmsg
//const char * stup ="insert into qq_ip_port(q_name, q_information )values(\'帅哥\',\'下线\');";
strcat(stup,"insert into qq_");
strcat(stup,"(q_name,q_information)values(\'");
if(!sqlite3_exec(studb,stup,NULL,NULL,&errstr)) //执行命令stup errstr 是出现错误的时候返回的错误信息
//printf("opeation is suceessfuly \n");
printf("opeation is failed \n");
printf("error: %s\n",errstr);
void create_table_stu1(char* a,char *b)//a: ip b:port //创造一个表
int res =sqlite3_open("stu1.db",&studb);// 打开数据库的函数 sqlite3 里面的 agrv[1] (参数传入)
// printf("sqlite3_Open ok\n");//打开成功
//printf("sqlite_open error\n");//打开失败
// printf("errmsg:%s \n",sqlite3_errmsg(studb));//错误信息的返回 函数errmsg
//char * create_table ="create table qq_ip_port(q_name text , q_information text);";
char create_table[1024]="";
strcat(create_table,"create table qq_");
strcat(create_table,"stu1");
strcat(create_table,"_");
strcat(create_table,port1);
strcat(create_table,"(q_name text,q_information text);");
//printf("%s\n",create_table);
if(!sqlite3_exec(studb,create_table,NULL,NULL,&errstr))//创建一个表来存储信息
//printf("create table is suceessfuly \n");
//printf("create_table is failed \n");
/// printf("error: %s\n",errstr);
void read_table_stu1(char *a,char* b)//a :ip b: port //从表里面读取数据
int res =sqlite3_open("stu1.db",&studb);// 打开数据库的函数 sqlite3 里面的 agrv[1] (参数传入)
//printf("sqlite3_Open ok\n");//打开成功
printf("sqlite_open error\n");//打开失败
printf("errmsg:%s \n",sqlite3_errmsg(studb));//错误信息的返回 函数errmsg
//char *look = "select * from qq_ip_port";//查看所有的列
strcat(look,"select * from qq_");
if(SQLITE_OK != sqlite3_get_table(studb,look,&paz_result,&hang,&lie,&errstr))
fprintf(stderr,"数据库操作错误\n%s\n",errstr); //输入到标准报错里面
for ( i = 0; i <= hang; i++)//默认会少打印一行,所以 i <= hang
for ( j = 0; j < lie; j++)
printf("%s\t",paz_result[index]);
int main(int argc,char *argv[])
char ip[1024]="192.168.1.162";
char kk[1024]="sdasdasdasdas";
create_table_stu1(ip,port);//a: ip b:prot
sqlite3_input(ip ,port,name,kk);//a :ip b: prot c: name d: 信息
read_table_stu1(ip,port);//a: ip b: prot