#include <stdio.h>
#include <sqlite3.h>
#include <string.h>
//插入
void do_insert(sqlite3 * db)
{
char name[128] = "";
char id[128] = "";
printf("请输入编号\n");
scanf("%s",id);
printf("请输入姓名\n");
scanf("%s",name);
char sql[1024] = "";
sprintf(sql,"insert into stu values(%s,\"%s\" )",id,name);
char *errmsg = NULL;
//执行sql语句
if(sqlite3_exec(db,sql,NULL,NULL,&errmsg)!=SQLITE_OK)
{
printf("insert_exec--->%s---->%d\n",errmsg,__LINE__);
return ;
}
printf("插入成功\n");
printf("\n");
}
//删除
void do_delete(sqlite3 * db)
{
char name[128] = "";
printf("请输入想要删除的名字\n");
scanf("%s",name);
char sql[1024] = "";
sprintf(sql,"delete from stu where name = \"%s\"",name);
char *errmsg = NULL;
//执行sql语句
if(sqlite3_exec(db,sql,NULL,NULL,&errmsg)!=SQLITE_OK)
{
printf("delete_exec--->%s---->%d\n",errmsg,__LINE__);
return ;
}
printf("删除成功\n");
printf("\n");
}
//修改
void do_update(sqlite3 * db)
{
char name[128] = "";
char new_name[128] = "";
printf("请输入想要修改的名字\n");
scanf("%s",name);
printf("请输入修改后的名字\n");
scanf("%s",new_name);
char sql[1024] = "";
sprintf(sql,"update stu set name = \"%s\" where name = \"%s\" ",new_name,name);
char *errmsg = NULL;
//执行sql语句
if(sqlite3_exec(db,sql,NULL,NULL,&errmsg)!=SQLITE_OK)
{
printf("delete_exec--->%s---->%d\n",errmsg,__LINE__);
return ;
}
printf("修改成功\n");
printf("\n");
}
//查询
void do_select(sqlite3 * db)
{
printf("请输入想要查询的名字\n");
}
int main(int argc,const char * argv[])
{
sqlite3 * db = NULL;
//打开数据库
if(sqlite3_open("./my.db",&db)!=SQLITE_OK)
{
printf("open--->%s---->%d\n",sqlite3_errmsg(db),__LINE__);
return -1;
}
printf("数据库创建成功\n");
char sql[1024] = "create table if not exists stu(id int,name char)";
char *errmsg = NULL;
//执行sql语句
if(sqlite3_exec(db,sql,NULL,NULL,&errmsg)!=SQLITE_OK)
{
printf("open--->%s---->%d\n",errmsg,__LINE__);
return -1;
}
printf("表创建成功\n");
while(1)
{
printf("-----------------------\n");
printf("---------1. 插入-------\n");
printf("---------2. 删除-------\n");
printf("---------3. 修改-------\n");
printf("---------4. 查询-------\n");
printf("---------5. 退出-------\n");
printf("-----------------------\n");
printf("请输入---->\n");
char c = 0;
scanf(" %c",&c);
if('5' == c)
break;
switch(c)
{
case '1':
do_insert(db);
break;
case '2':
do_delete(db);
break;
case '3':
do_update(db);
break;
case '4':
do_select(db);
break;
default:
printf("输入错误,请重新输入\n");
}
}
//创建数据库
if(sqlite3_close(db)!=SQLITE_OK)
{
printf("open--->%s---->%d\n",sqlite3_errmsg(db),__LINE__);
return -1;
}
printf("数据库删除成功\n");
return 0;
}