数据库--Sqlite3

 1、思维导图

 2sqlite3在linux中是实现数据的增删,改

#include<myhead.h>

int main(int argc, const char *argv[])
{
        //1、定义一个数据库句柄指针
        sqlite3* ppDb =NULL;
        //2、创建或打开数据库
        if(sqlite3_open("./mydb.db",&ppDb)!=SQLITE_OK)
        {
                printf("sqlite3_open error\n");
                return -1;
        }
        printf("数据库成功打开\n");
//
        //3、创建数据表
        //3.1、准备sql语句
        char sql[128]="create table if not exists student(student_id  int ,name char,sex char ,score double);";
        char *errmsg =NULL;
        if(sqlite3_exec(ppDb,sql,NULL,NULL,&errmsg)!=SQLITE_OK)
        {
                printf("%s\n",errmsg);
                return -1;
        }
        printf("数据表创建成功\n");
 
        int a=0;

        int  a1=0;
        char a2[20]="";
        char a3[5]="";
        int a4=0;
        printf("*****学生信息***********\n");
        printf("*****1、添加学生信息****\n");
        printf("*****2、修改学生信息*****\n");
        printf("*****3、删除学生信息*****\n");
        printf("*****4、查找学生信息******\n");
        printf("*****0、退出系统**********\n");
        printf("请输入》》》:");
        scanf("%d",&a);

        switch(a)
        {
        case 1:
                {
                printf("请输入信息:");
                scanf("%d %s %s %d",&a1,a2,a3,&a4);
                getchar();
                        sprintf(sql,"insert into student values(%d,\"%s\",\"%s\",%d);",a1,a2,a3,a4);


                if(sqlite3_exec(ppDb,sql,NULL,NULL,&errmsg)!=SQLITE_OK)
                {
                        printf("%s\n",errmsg);
                        return -1;
                }
                break;

                }
        case 2:
                {
                printf("请输入学号和姓名:");
                scanf("%d %s %s %d",a1,a2,a3,a4);
                getchar();
                sprintf(sql,"UPDATE TABLE student student_id=%d AND name=\"%s\" WHERE sex=\"%s\" %d;",a1,a2,a3,a4);
                if(sqlite3_exec(ppDb,sql,NULL,NULL,&errmsg)!=SQLITE_OK)
                {
                        printf("%s\n",errmsg);
                        return -1;
                }
                break;


                }
        case 3:
                {
                printf("请输入信息:");
                scanf("%s",a2);
                getchar();
                sprintf(sql,"DELETE FROM student WHERE name=\"%s\"",a2);
                if(sqlite3_exec(ppDb,sql,NULL,NULL,&errmsg)!=SQLITE_OK)
                {
                        printf("%s\n",errmsg);
                        return -1;
                }
                break;
                }

        case 0:
                {
                sprintf(sql,"DROP TABLE student;");
                if(sqlite3_exec(ppDb,sql,NULL,NULL,&errmsg)!=SQLITE_OK)
                {
                        printf("%s\n",errmsg);
                        return -1;
                }
                break;

                }


        }

        sqlite3_close(ppDb);
        return 0;
}
 

相关推荐

  1. 数据库SQLite3 中文存储

    2024-04-22 09:40:02       17 阅读
  2. 创建数据库sqlite3文件

    2024-04-22 09:40:02       11 阅读
  3. sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块

    2024-04-22 09:40:02       35 阅读
  4. sqlite3 数据库的增删改查

    2024-04-22 09:40:02       18 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-22 09:40:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-22 09:40:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-22 09:40:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-22 09:40:02       20 阅读

热门阅读

  1. C 练习实例13

    2024-04-22 09:40:02       12 阅读
  2. TensorFlow的基本概念及使用场景

    2024-04-22 09:40:02       16 阅读
  3. Oracle

    2024-04-22 09:40:02       14 阅读
  4. 【大模型系列】提示学习

    2024-04-22 09:40:02       14 阅读
  5. 冰狐智能辅助和按键精灵如何选择?

    2024-04-22 09:40:02       17 阅读
  6. 微软面试高频算法题解析与代码实现(C++)

    2024-04-22 09:40:02       14 阅读
  7. React参数传递问题

    2024-04-22 09:40:02       13 阅读
  8. otomegame游戏音频提取通用教程

    2024-04-22 09:40:02       14 阅读