当前位置: 首页 > news >正文

数据库C语言删除修改和输出

#include<myhead.h>

#include<sqlite3.h>


int out_callback(void *arg,int column_num, char **msgrow,char **msgcolumn)//输出查找的工人信息
{


    int i = 0, j = 0;
    while(i<column_num)
    {
        printf("%s\t" ,*(msgcolumn+i));
    
        printf("%s\t",*(msgrow+i));
    

        i++;    
    
    }
    printf("\n");

    return 0;
}
int do_showall(sqlite3 *ppDb)
{
    char *errmsg = NULL;

    char output_exec[100] = "select *from Work;";
    
    if(sqlite3_exec(ppDb,output_exec,out_callback,NULL,&errmsg)!=0)//实现插入一个工人信息
    {
        perror("sqlite3_errmsg");
        printf("错误码:%d错误信息:%s,出错行是:%d\n",
                sqlite3_errcode(ppDb),errmsg,__LINE__);
        

        return -1;
    }


}
int do_delete(sqlite3*ppDb)
{
    char key[20];
    char *errmsg = NULL;

    printf("输入你想要删除的名字:");
    scanf("%s",key);
    char delete_exce[100];
    snprintf(delete_exce,sizeof(delete_exce),"delete from Work where name==\"%s\";",key);

    if(sqlite3_exec(ppDb,delete_exce,NULL,NULL,&errmsg)!=0)
    {
        perror("sqlite3_exec");
        printf("错误码:%d错误信息:%s,出错行是:%d\n",
                sqlite3_errcode(ppDb),errmsg,__LINE__);
        return -1;
    }
    printf("删除成功\n");
}

int do_change(sqlite3*ppDb)
{
    char key[20];
    char *errmsg = NULL;
    int num;
    printf("输入工号:");
    scanf("%d",&num);
    printf("输入你根据工号想要修改的名字:");
    scanf("%s",key);
    char change_exce[100];
    snprintf(change_exce,sizeof(change_exce),"update Work set name==\"%s\" where gh==%d;",key,num);

    if(sqlite3_exec(ppDb,change_exce,NULL,NULL,&errmsg)!=0)
    {
        perror("sqlite3_exec");
        printf("错误码:%d错误信息:%s,出错行是:%d\n",
                sqlite3_errcode(ppDb),errmsg,__LINE__);
        return -1;
    }
    printf("删除成功\n");


}

void menu(sqlite3 * ppDb)
{
    int ch;
    printf("\t\t\t*******工人阶级为主导的社会主义国家**********\n");
    printf("\t\t\t1、插入一个工人信息\n");
    
    printf("\t\t\t2、删除一个工人信息\n");
    printf("\t\t\t3、修改一个工人信息\n");
    printf("\t\t\t4、查找一个工人信息\n");
    
    printf("\t\t\t5、输出所有工人信息\n");
    
    printf("\t\t\t0、退出\n");
    printf("请输入你的选择:");
    scanf("%d",&ch);
    getchar();//吸收回车
    switch(ch)
    {
    
         case 1:
        
            do_insert(ppDb);

        break;
    
         case 2:
        
            do_delete(ppDb);

        break;
    
        case 3:
            do_change(ppDb);
        break;
    
         case 4:
            do_reserch(ppDb);
        break;
    
        case 5:
            do_showall(ppDb);
        break;

        case 0:
        exit(0);
        break;
    
         default:
            printf("error");
        
        break;
        
    
    
    
    
    }
    
    
    

}

相关文章:

数据库C语言删除修改和输出

#include<myhead.h> #include<sqlite3.h> int out_callback(void *arg,int column_num, char **msgrow,char **msgcolumn)//输出查找的工人信息 { int i 0, j 0; while(i<column_num) { printf("%s\t" ,*(msgcolumni)); …...

插槽slot

一、简介&#xff1a; 插槽是 Vue 组件化开发中非常强大且灵活的工具&#xff0c;它使得组件的复用性和可定制性大大提高。通过合理地使用不同类型的插槽&#xff0c;可以构建出更加灵活和可维护的 Vue 应用程序。 二、使用场景 可重用组件的定制化 比如一个通用的弹窗组件&am…...

交换技术是一种在计算机网络和通信系统中广泛应用的关键技术,它主要通过交换设备(如交换机、路由器等)实现数据的转发和传输

交换技术是一种在计算机网络和通信系统中广泛应用的关键技术&#xff0c;它主要通过交换设备&#xff08;如交换机、路由器等&#xff09;实现数据的转发和传输。交换技术的核心目的是在不同的设备之间高效地传输数据&#xff0c;实现信息的互联互通。 一、交换技术的定义 交换…...

数仓建模:数仓设计中的10个陷阱

目录 0 引言 1 主要内容 1.1 过于迷恋技术&#xff0c;而没有将重点放在业务需求和目标上 1.2 没有或无法找到一个有影响的、平易近人的、明白事理的高级管理人员作为数仓建设的发起人 1.3 将项目处理为一个巨大的持续多年的项目&#xff0c;而不是追求更容易管理的、虽然…...

Vue如何将网页转换成图片或PDF并上传

一.使用html2canvas获取页面元素并绘制成图片 htmlcanvas中文文档 npm install --save html2canvas<template><div><button click"uploadImg">上传</button><div ref"yourDom"><!-- ...图片中页面内容 --><img s…...

【引领数据分析革命】TaskWeaver框架全景解读与入门指南!

亲爱的技术爱好者们&#xff0c;我是你们的老朋友—— 一个热爱.NET和AI相关技术的博主&#xff0c;在今天这个信息与数据爆炸的时代&#xff0c;我们始终寻求着处理数据分析任务的更优雅、更高效的方式。Microsoft团队推出了一个叫做TaskWeaver的神器&#xff0c;这可不仅仅是…...

LabVIEW灵活集成与调试的方法

在LabVIEW开发中&#xff0c;为了构建一个既便于调试又能灵活集成到主VI中的控制VI&#xff0c;开发者需要采用适当的编程方式和架构。常见的选择包括模块化设计、状态机架构以及事件驱动编程。这些方法有助于简化调试过程、提高系统的稳定性&#xff0c;并确保代码的重用性和可…...

网络药理学:分子对接之二:PDB数据库的使用(已知PDB ID)、PubChem数据库如果没有3D结构

PDB数据库使用 官方地址&#xff1a;https://www.rcsb.org/ 首页如下&#xff1a; 我们以热休克蛋白HSP90AA1为例&#xff0c;其PDB ID为7DHG&#xff0c;所以我们在搜索栏输入7DHG&#xff1a; 主要关注红框里的几个地方。 Download 下载文件&#xff0c;一般选择PDB For…...

JS获取页面中video标签视频的封面和时长

从HTML中提取Video信息 /*** 从html字符串中提取video标签* 入参&#xff1a; {String} htmlString* 出参&#xff1a;{Array} 数组*/ function extractVideosFromHTML(htmlString) {const dom new DOMParser().parseFromString(htmlString, text/html);const videos Arr…...

LLM大模型学习:AI Agent综述

AI Agent是什么 将LLM思想链接到一起&#xff0c;自主实现用户设定的任何目标。只需要告诉AutoGPT一个目标&#xff0c;能自主生成执行计划。 吴恩达&#xff1a;“与其争论哪些工作才算是真正的 Agent&#xff0c;不如承认系统可以具有不同程度的 Agentic 特性。” 核心在于…...

极米科技:走出舒适圈,推动数据架构现代化升级 | OceanBase 《DB大咖说》

《DB 大咖说》第 13 期&#xff0c;邀请到了极米科技软件与创新产品线高级架构师施刘凡来进行分享。 在小红书平台上&#xff0c;“是否应将家里的电视升级为投影仪&#xff1f;”这一话题激发了上百万篇笔记的分享与推荐&#xff0c;反映出年轻群体对投影仪的偏好。随着手机、…...

IP学习——Fiveday

设备排错 [R1]display ip interface brief 查看路由器接口的IP地址信息 [R1]display current-configuration int g0/0/1.10 查看路由器接口的IP地址信息 TG---> trunk查看vlan指令:displayvan其中UT--->accessc.vlan确认完成后 即链路层配置完成排查网络层错误 排查终端主…...

格式化的硬盘能恢复数据吗?拯救数据的可能性

在信息技术高速发展的今天&#xff0c;硬盘作为计算机的核心存储部件&#xff0c;承载着大量的数据和文件。然而&#xff0c;有时因为误操作或其他原因&#xff0c;我们可能需要对硬盘进行格式化&#xff0c;这往往导致重要数据的丢失。 那么&#xff0c;格式化后的硬盘数据是否…...

亚信安全出席第五届国际反病毒大会 探究AI现代网络勒索治理

近日&#xff0c;第二届网络空间安全&#xff08;天津&#xff09;论坛正式开幕。本届论坛由天津市政府主办&#xff0c;国家计算机病毒应急处理中心、天津市公安局、天津市滨海新区政府承办&#xff0c;国家网络与信息安全信息通报中心协办&#xff0c;围绕“共建网络安全 共治…...

C语言从头学58——学习头文件math.h(一)

math.h 头文件提供了很多数学计算方面的函数。 一、使用数学函数前需要了解的两个类型、两个宏 1、float_t&#xff1a;当前系统能够有效执行float运算的类型&#xff0c;宽度不少于float。 2、double_t&#xff1a;当前系统能够有效执行double运算的类型&#xff0c;宽度不…...

前端JS常见面试题

数据双向绑定 Bug解决 集成工作涉及 版本node 依赖包报错 版本问题&#xff01;&#xff01;&#xff01;ElementUI、Cesium、ant-design 配置、代码和其他 混入 在Vue中&#xff0c;混入&#xff08;Mixins&#xff09;是一种非常有用的功能&#xff0c;它允许你创建可复…...

利用深度学习实现验证码识别-4-ResNet18+imagecaptcha

在当今的数字化世界中&#xff0c;验证码&#xff08;CAPTCHA&#xff09;是保护网站免受自动化攻击的重要工具。然而&#xff0c;对于用户来说&#xff0c;验证码有时可能会成为一种烦恼。为了解决这个问题&#xff0c;我们可以利用深度学习技术来自动识别验证码&#xff0c;从…...

IDC基础学习笔记

一、数据中心介绍 1、数据中心级别划分&#xff1a; 2、数据中心结构&#xff1a; 3、IT系统组成 二、数据中心硬件知识 1、服务器组件 服务器的正面接口&#xff1a; 服务器的反面接口&#xff1a; &#xff08;1&#xff09;CPU CPU定义&#xff1a;中央处理器&#xff08…...

Mysql基础练习题 1527.患某种疾病的患者 (力扣)

查询患有 I 类糖尿病的患者 ID &#xff08;patient_id&#xff09;、患者姓名&#xff08;patient_name&#xff09;以及其患有的所有疾病代码&#xff08;conditions&#xff09;。I 类糖尿病的代码总是包含前缀 DIAB1 。 题目链接&#xff1a; https://leetcode.cn/proble…...

Mysql链接异常 | [08001] Public Key Retrieval is not allowed

Datagrid报错 [08001] Public Key Retrieval is not allowed 这个错误通常是由于 MySQL 8.0 中的新特性导致的。默认情况下&#xff0c;MySQL 8.0 使用 caching_sha2_password 作为认证插件&#xff0c;而你需要在连接 URL 中明确允许公钥检索或者使用老版本的认证方式 mysql…...

QMC5883L的驱动

简介 本篇文章的代码已经上传到了github上面&#xff0c;开源代码 作为一个电子罗盘模块&#xff0c;我们可以通过I2C从中获取偏航角yaw&#xff0c;相对于六轴陀螺仪的yaw&#xff0c;qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍

文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结&#xff1a; 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析&#xff1a; 实际业务去理解体会统一注…...

QT: `long long` 类型转换为 `QString` 2025.6.5

在 Qt 中&#xff0c;将 long long 类型转换为 QString 可以通过以下两种常用方法实现&#xff1a; 方法 1&#xff1a;使用 QString::number() 直接调用 QString 的静态方法 number()&#xff0c;将数值转换为字符串&#xff1a; long long value 1234567890123456789LL; …...

在WSL2的Ubuntu镜像中安装Docker

Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包&#xff1a; for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...

【笔记】WSL 中 Rust 安装与测试完整记录

#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统&#xff1a;Ubuntu 24.04 LTS (WSL2)架构&#xff1a;x86_64 (GNU/Linux)Rust 版本&#xff1a;rustc 1.87.0 (2025-05-09)Cargo 版本&#xff1a;cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别

【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而&#xff0c;传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案&#xff0c;能够实现大范围覆盖并远程采集数据。尽管具备这些优势&#xf…...

搭建DNS域名解析服务器(正向解析资源文件)

正向解析资源文件 1&#xff09;准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2&#xff09;服务端安装软件&#xff1a;bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...

计算机基础知识解析:从应用到架构的全面拆解

目录 前言 1、 计算机的应用领域&#xff1a;无处不在的数字助手 2、 计算机的进化史&#xff1a;从算盘到量子计算 3、计算机的分类&#xff1a;不止 “台式机和笔记本” 4、计算机的组件&#xff1a;硬件与软件的协同 4.1 硬件&#xff1a;五大核心部件 4.2 软件&#…...

「全栈技术解析」推客小程序系统开发:从架构设计到裂变增长的完整解决方案

在移动互联网营销竞争白热化的当下&#xff0c;推客小程序系统凭借其裂变传播、精准营销等特性&#xff0c;成为企业抢占市场的利器。本文将深度解析推客小程序系统开发的核心技术与实现路径&#xff0c;助力开发者打造具有市场竞争力的营销工具。​ 一、系统核心功能架构&…...

小木的算法日记-多叉树的递归/层序遍历

&#x1f332; 从二叉树到森林&#xff1a;一文彻底搞懂多叉树遍历的艺术 &#x1f680; 引言 你好&#xff0c;未来的算法大神&#xff01; 在数据结构的世界里&#xff0c;“树”无疑是最核心、最迷人的概念之一。我们中的大多数人都是从 二叉树 开始入门的&#xff0c;它…...