C#底层库--MySQL数据库脚本构建类(自动构建insert、update)

news/2024/11/15 7:01:06/

系列文章

C#底层库–记录日志帮助类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/124187709

C#底层库–MySQL数据库脚本构建器(推荐阅读)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/129179216

C#底层库–MySQL数据库访问操作辅助类(推荐阅读)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/126886379

C#底层库–XML配置参数读写辅助类(推荐阅读)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/129175304

C#底层库–获取文件版本和MD5值
本文链接:https://blog.csdn.net/youcheng_ge/article/details/112513871

C#底层库–操作文件帮助类FileHelper(获取目录的所有文件)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/126887161

C#底层库–操作Excel帮助类(读取、导出表格)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/126887445

C#底层库–软件版本管理XML
本文链接:https://blog.csdn.net/youcheng_ge/article/details/110195766

C#底层库–随机数生成类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/126888812

C#底层库–正则表达式帮助类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/109745286

C#底层库–CSV和DataTable相互转换
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128804367

C#底层库–Image图片操作类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128805298

C#底层库–JSON帮助类_详细(序列化、反序列化、list、datatable)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128805705

C#底层库–cookie操作辅助类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128816347

C#底层库–Session操作辅助类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128817096

C#底层库–数据实体类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128816638

C#底层库–Image图片操作类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128805298

C#底层库–数据库类型与程序类型转换类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128817610

C#底层库–日期扩展类(上周、本周、明年、前年等)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/129040663

文章目录

  • 系列文章
  • 前言
  • 一、底层库介绍
  • 二、底层库源码
  • 三、调用方法
    • 3.1 测试代码
    • 3.2 测试效果
  • 四、项目样例
  • 五、资源链接


前言

本专栏为【底层库】,主要介绍编程过程中 通用函数。我们将这些通用固化的源码,进行重写、封装、拓展,再进行单元测试、集成测试、beta测试,最终形成通用化模板,这里我们称为“底层库”。

作为研发人员的你,并不需要花大量时间,研究“底层库”的含义,及“底层库”的实现方法。你只需要几行调用代码,就可以解决项目上碰到的难题。而底层库使用方法,本专栏均有详细介绍,也有项目应用场景。

底层库已实现功能:MySQL脚本构建器、MySQL数据库访问操作、参数配置文件读写、加解密算法、日志记录、HTTP通信、Socket通信、API前后端交互、邮件发送、文件操作、配置参数存储、Excel导入导出、CSV和DataTable转换、压缩解压、自动编号、Session操作等。

本专栏会持续更新,不断优化【底层库】,大家有任何问题,可以私信我。本专栏之间关联性较强(我会使用到某些底层库,某些文章可能忽略介绍),如果您对本专栏感兴趣,欢迎关注,我将带你用最简洁的代码,实现最复杂的功能。

一、底层库介绍

本文主要介绍如何快速生成 数据库SQL脚本,无论我们做什么开发语言,始终离不开与数据库的交互,所以必然要使用数据操纵语言–SQL。

使用我们的底层库,你将不在需要人工写SQL语句了,你只需要关注数据逻辑赋值、关注数据模型,顺便提一句:数据逻辑赋值这里我也完成了工具生成,可以阅读专栏《提升编程效率》。畅想一下你只需要把DataTable、List传给它,它就自动帮你构建SQL脚本,结合文章《C#底层库–MySQL数据库访问操作辅助类(推荐阅读)》,你也不用管数据库连接了,是不是给你编程带来很大便利。

功能包含:insert语句、update语句、内部构建select子句、内部构建set子句、内部构建where子句。

注意:实际项目开发,可以联合其它底层库使用《C#底层库--MySQL数据库访问操作辅助类(推荐阅读)》

二、底层库源码

创建类MySQLBuilder,复制以下代码。

三、调用方法

我写了测试例子,我们看一下构造的SQL语句是否正确。

3.1 测试代码

创建一个控制台程序,主方法里面复制以下代码:

 static void Main(string[] args){List<T_wutiao> model = new List<T_wutiao>();T_wutiao t_Wutiao = new T_wutiao(){编号 = "20230217",规格 = "15.6",重量 = "5",采购订单号 = "SO20230223"};model.Add(t_Wutiao);t_Wutiao = new T_wutiao(){编号 = "20230222",规格 = "0.78",重量 = "10",采购订单号 = "SO20230224"};model.Add(t_Wutiao);//01-insert语句string l_sqlInsert = MySQLBuilder.CreateInsertSQLBuilder("T_wutiao", model);//02-update语句string l_sqlUpdate1 = MySQLBuilder.CreateUpdateSQLBuilder("T_wutiao", "编号;规格", model);string l_sqlUpdate2 = MySQLBuilder.CreateUpdateSQLBuilder("T_wutiao", "编号;", model);}

创建一个数据模型类 t_wutiao.cs,我删除了部分字段,这类用咱们【代码生成器CreateCode】完全可以自动生成,复制以下代码:

namespace ConsoleApp2
{public class T_wutiao{public T_wutiao() { }public string 编号 { get; set; }public string 规格 { get; set; }public string 重量 { get; set; }public string 采购订单号 { get; set; }}
}

3.2 测试效果

① Insert语句:

INSERT INTO T_wutiao (编号,规格,重量,采购订单号)SELECT '20230217','15.6','5','SO20230223'
UNION ALL
SELECT '20230222','0.78','10','SO20230224'

在这里插入图片描述

② update语句:

UPDATE T_wutiao SET 重量='5',采购订单号='SO20230223' WHERE (1=1) AND 编号='20230217' AND 规格='15.6'
UPDATE T_wutiao SET 重量='10',采购订单号='SO20230224' WHERE (1=1) AND 编号='20230222' AND 规格='0.78'

在这里插入图片描述
③ update语句:

UPDATE T_wutiao SET 规格='15.6',重量='5',采购订单号='SO20230223' WHERE (1=1) AND 编号='20230217'
UPDATE T_wutiao SET 规格='0.78',重量='10',采购订单号='SO20230224' WHERE (1=1) AND 编号='20230222'

在这里插入图片描述
怎么样?畅想一下你只需要把DataTable、List传给它,它就自动帮你构建SQL脚本,结合文章《C#底层库–MySQL数据库访问操作辅助类(推荐阅读)》,你也不用管数据库连接了,是不是给你编程带来很大便利。

四、项目样例

后期补充

五、资源链接

C#代码模板生成器CreateCode.exe
链接:https://pan.baidu.com/s/1uF_9uqoXEHuggKbeVM8P2w?pwd=l0u2
提取码:l0u2


http://www.ppmy.cn/news/27472.html

相关文章

SpringBoot项目打包部署到阿里云服务器、通过Maven插件制作Docker镜像、部署项目容器、配置生产环境

制作通用模块jar包 通用模块不是运行的&#xff0c;而且要被其他模块引入的&#xff0c;所以该模块不能采用springboot打包方式制作jar包&#xff0c;否则其他模块无法引入通用模块。 1、修改通用模块&#xff0c;设置模块为非Springboot项目 <?xml version"1.0&qu…

如何找回回收站删除的文件

回收站作为删除文件后的临时存放点&#xff0c;只要我们是右键删除或者按delete删除的文件都会存放到这里&#xff0c;所以我们每次清理电脑后&#xff0c;都会清空回收站&#xff0c;这样可以让电脑保持流畅运行。但删除这个操作是很容易出错&#xff0c;很容易把某些重要的文…

筑基七层 —— 数据在内存中的存储?拿来吧你

目录 零&#xff1a;移步 一.修炼必备 二.问题思考 三.整型在内存中的存储 三.大端字节序和小端字节序 四.浮点数在内存中的存储 零&#xff1a;移步 CSDN由于我的排版不怎么好看&#xff0c;我的有道云笔记相当的美观&#xff0c;请移步至有道云笔记 一.修炼必备 1.入门…

设备树(配合LED驱动说明)

目录 一、起源 二、基本组成 三、基本语法 四、特殊节点 4.1 根节点 4.2 /memory 4.3 /chosen 4.4 /cpus 多核CPU支持 五、常用属性 5.1 phandle 5.2 地址 --------------- 重要 5.3 compatible --------------- 重要 5.4 中断 --------------- 重要 5.5 …

git 本地新建分支并进行合并

由于新的要求 不允许在线上直接clone下的git分支进行开发&#xff0c;只能本地新建分支再往线上分支合并远程库clone到本地库 git clone 需要下载的git地址注意我下载下来的是dev分支 根据实际情况进行分析git clone https://gitee.com/hello.git本地创建新的分支 git checkout…

灰狼算法优化VMD对时序信号分析python

VMD算法变分模态分解(VMD)算法是一种根据变分方程计算,将信号分析过程转换成求解变分方程的过程,具体分析过程可见前面写的另外一篇博客VMD,这里不多介绍。 VMD算法在进行信号分析时,将一段时序信号分解成不同频段的几个子信号,但其分解效果的好坏由其两个参数影响较大—…

Python 之 Pandas 时间戳、通过时间间隔实现 datetime 加减、时间转化、时期频率转换和 shift() 时间频率进行移位)

文章目录一、时间戳1. unit 参数是 s2. year、month、day、hour、minute、second、microsecond 单独设置时间二、通过时间间隔实现 datetime 加减三、时间转化1. 处理各种输入格式2. 将字符串转 datetime3. 除了可以将文本数据转为时间戳外&#xff0c;还可以将 unix 时间转为时…

关于selenium的等待

目录 隐式等待 显式等待 注意事项 隐式等待 简单来说&#xff1a;在规定的时间范围内&#xff0c;轮询等待元素出现之后就立即结束。 如果在规定的时间范围内&#xff0c;元素仍然没有出现&#xff0c;则会抛出一个异常【NoSuchElementException】&#xff0c;脚本停止运行…