首页 > 数据库 >C# MySQL Dapper insert delete select update data from table

C# MySQL Dapper insert delete select update data from table

时间:2024-09-27 21:51:35浏览次数:1  
标签:insert Console string C# update bk selectStr WriteLine conn

Install dapper 

 

 

 

using Dapper;
using MySql.Data.MySqlClient;

namespace ConsoleApp87
{
    internal class Program
    {
        static string connStr = @"Server=servernamevalue;user id=usernamevalue;password=passwordvalue;database=databasenamevalue;";
        static void Main(string[] args)
        {
            DapperDeleteData();
            Console.ReadLine();
        }

        static void DapperDeleteData()
        {
            using (MySqlConnection conn = new MySqlConnection(connStr))
            {
                conn.Open();
                Console.WriteLine(conn.State);
                string selectStr = "select * from t1 order by id desc limit 1;";
                var bk = conn.Query<Book>(selectStr).FirstOrDefault();
                Console.WriteLine(bk.ToString());
                string deleteSQL = "delete from t1 where id=@id";
                int deleteResult = conn.Execute(deleteSQL, bk);
                Console.WriteLine($"DeleteResult:{deleteResult}");
                bk = conn.Query<Book>(selectStr).FirstOrDefault();
                Console.WriteLine(bk.ToString());
            }
        }

        static void DapperUpdateData()
        {
            using (MySqlConnection conn = new MySqlConnection(connStr))
            {
                conn.Open();
                Console.WriteLine(conn.State);
                string selectStr = "select * from t1 order by id desc limit 1";
                Book bk = conn.Query<Book>(selectStr).FirstOrDefault();
                Console.WriteLine(bk.ToString());
                bk.FirstName = $"{bk.FirstName}_Max";
                bk.LastName = $"{bk.LastName}_Max";

                string updateSQL = "update t1 set firstname=@firstname,lastname=@lastname where id=@id";
                int updatedResult = conn.Execute(updateSQL, bk);
                Console.WriteLine($"UpdatedResult:{updatedResult}");
                bk = conn.Query<Book>(selectStr).FirstOrDefault();
                Console.WriteLine(bk.ToString());
            }
        }

        static void DapperInsertData()
        {
            using (MySqlConnection conn = new MySqlConnection(connStr))
            {
                conn.Open();
                Console.WriteLine(conn.State);
                string selectStr = "select id from t1 order by id desc limit 1";
                int maxId = conn.Query<int>(selectStr).FirstOrDefault();
                Console.WriteLine($"Old maxId:{maxId}");
                int newId = maxId + 1;
                Book bk = new Book()
                {
                    FirstName=$"FirstName_{newId}",
                    LastName=$"LastName_{newId}"
                };
                string insertSql = "insert into t1 (firstname,lastname) values (@firstname,@lastname)";
                int insertedResult= conn.Execute(insertSql, bk);
                Console.WriteLine($"Inserted Result:{insertedResult}");
                maxId = conn.Query<int>(selectStr).FirstOrDefault();
                Console.WriteLine($"New MaxId:{maxId}");
            }
        }

        static void DapperReadData()
        {
            using (MySqlConnection conn = new MySqlConnection(connStr))
            {
                conn.Open();
                Console.WriteLine(conn.State);
                string selectStr = "select * from t1 where id in (1,2,3);";
                List<Book> booksList = conn.Query<Book>(selectStr).ToList();
                if (booksList != null && booksList.Any())
                {
                    foreach (var bk in booksList)
                    {
                        Console.WriteLine(bk.ToString());
                    }
                    
                }
            }
        }

        public class Book
        {
            public int Id { get; set; }
            public string FirstName { get; set; }
            public string LastName { get; set; }

            public override string ToString()
            {
                return $"Id:{Id},FirstName:{FirstName},LastName:{LastName}";
            }
        }
    }
}

 

 

 

 

use mydb;
select * from t1 order by id desc limit 1;

 

 

 

标签:insert,Console,string,C#,update,bk,selectStr,WriteLine,conn
From: https://www.cnblogs.com/Fred1987/p/18436657

相关文章

  • 【网站架构部署与优化】Tomcat优化、Tomcat多实例部署
    文章目录Tomcat优化Tomcat配置文件参数优化示例配置TomcatJVM参数配置参数解释注意总结Tomcat配置文件参数优化(`server.xml`)1.线程池参数2.网络连接参数3.性能优化参数Java虚拟机(JVM)调优1.堆内存设置2.新生代和老年代设置3.垃圾收集器设置4.其他性能优......
  • Event和Activity
    在JAINSLEE中,Event(事件)和Activity(活动)是两个核心概念,它们共同作用于系统的执行过程,但它们代表不同的含义和职责。让我们从最基础的层面来讲解它们的区别、联系,以及它们在JAINSLEE框架中的角色。1.Event(事件)1.1概念事件(Event)是JAINSLEE中的一个基本单元,用来......
  • 题解 HZOJ 284 超市卖货 C/C++
    题目传送门:超市卖货-题目-OnlineJudge(haizeix.com)https://oj.haizeix.com/problem/284思路:每次寻找价格最高的商品,并尝试卖掉它:寻找未卖出商品的日期,优先锁定其保质期最后一天,若该日期已卖出则继续向前寻找能找到未卖出商品的日期时,收入增加,标记该日期代码实现:为......
  • Echarts图表知识点汇总及请求django服务器后端跨域问题解决
    1.引入echartsvue3中通过npm引入:npminstallecharts--saveimport*asechartsfrom'echarts';//基于准备好的dom,初始化echarts实例varmyChart=echarts.init(document.getElementById('main'));//绘制图表myChart.setOption({title:{text:'ECha......
  • ISO/IEC/IEEE 29119-1:2022(E) 系统与软件工程软件测试第1部分:概念和定义
    0前言国际标准化组织(ISOtheInternationalOrganizationforStandardization)和国际电工委员会(IECtheInternationalElectrotechnicalCommission)构成了世界标准化的专门体系。作为国际标准化组织或国际电工委员会成员的国家机构通过各自组织设立的技术委员会参与国际标准的......
  • 2024 ICPC网络赛第一场 CGL (by hzy)
    C.PermutationCounting4(线性代数)大意:求排列计数,限制条件:每个元素位置只能在给定区间\([l,r]\)内,答案模2。行列式最基本的定义是枚举排列,构造一个n阶行列式,让每一行的\([l,r]\)内为1,其余为0,则行列式的值就是答案。考虑模2意义下,01异或行列式为0当且仅当某些行异或起来(初等行......
  • 不同batch_size性能分析、MeshAnything论文
    1、不同batch_size时运行train_segmentor.py的cpu、gpu、内存使用情况和batch_size性能分析任务管理器cpu、gpu参数Windows11最新版:任务管理器性能参数详解,什么是分页缓冲池和句柄-CSDN博客batch_sizecpu利用率gpu[专用、共享、GPU内存]iter用时(s)iters/epochm......
  • P9019 [USACO23JAN] Tractor Paths P 题解
    P9019[USACO23JAN]TractorPathsP题解难度其实绝对不止蓝题。先考虑第一问。维护任意两点之间的最短路是困难的,难以dp或是采取其它方法解决。难以算最短路就转换思路,考虑从\(x\)走\(p\)步能走到哪。考虑到这个东西是有单调性的,也就是说对于\(x<y<z\),从\(x\)能走到......
  • [CL-22] 异或和之和
    CL-22二进制拆分。对于枚举到的每一个二进制位\(i\),注意到其对答案的贡献只有\(0\)和\(2^{i}\)两种情况考虑什么时候贡献是\(2^i\),可以发现,当选入奇数个该位为\(1\)的数之后,对答案的贡献是\(2^{i}\)因此变成求选出奇数个为\(1\)的数的方案数设该位为\(1\)的数有......
  • C++引用的基本概念,引用的定义与使用
    C++中的引用(Reference)是一种复合类型,它是某个已存在变量的别名(alias)。换句话说,引用在内部存储了另一个变量的地址,但是与指针不同的是,引用在定义时必须被初始化,并且一旦被初始化后,它就不能再被改变为引用另一个变量(即引用一旦绑定到一个变量,就不能再被绑定到另一个变量)。此外,引......