在C#的控制台应用中使用Dapper链接MySQL数据库并执行一些增删改查
小标 2018-11-07 来源 : 阅读 3285 评论 0

摘要:本文主要向大家介绍了在C#的控制台应用中使用Dapper链接MySQL数据库并执行一些增删改查 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助。

本文主要向大家介绍了在C#的控制台应用中使用Dapper链接MySQL数据库并执行一些增删改查 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助。

一、首先先创建一个C#的控制台应用

技术分享图片

 

二、然后添加上必要的命名空间

using System;
using System.Collections.Generic;
using MySql.Data.MySqlClient;
using System.Data;
using Dapper;
using System.Linq;

 

三、首先配置好一个数据库中存在的类表:

class Info
    {
        public int action_id { get; set; }
        public int parent_id { get; set; }
        public string action_code { get; set; }
        public string relevance { get; set; }
    }
 

技术分享图片

 

四、添加Dapper和MYSQL的扩展包

添加Dapper扩展包

技术分享图片

添加Mysql扩展包
技术分享图片

 

最后在最右边的管理中可以查看到自己刚刚添加的扩展:

技术分享图片

 

五、添加数据库链接代码

//数据库连接配置信息;
public static string constr = "server = localhost;User Id = root;password = 123456;Database = ecshop";
  再添加无条件查询的代码:

        /// 


        /// 无条件查询所有;
        /// 


        /// 


        public static List

 Query()
        {
            using (IDbConnection connection = new MySqlConnection(constr))
            {
                return connection.Query("select * from sdx_admin_action").ToList();
            }
        }    
 

执行结果如下:

技术分享图片

 

以下为源码包含增删改查:

using System;
using System.Collections.Generic;
using MySql.Data.MySqlClient;
using System.Data;
using Dapper;
using System.Linq;

namespace SelectAll
{
    class Info
    {
        public int action_id { get; set; }
        public int parent_id{ get; set; }
        public string action_code { get; set; }
        public string relevance { get; set; }
    }
    class Program
    {
        //数据库连接配置信息;
        public static string constr = "server = localhost;User Id = root;password = 123456;Database = ecshop";

        static void Main(string[] args)
        {
            /*Info One = new Info();
            One.parent_id = 2;
            One.action_code = "小弱鸡";
            One.relevance = "here~";*/

            //插入
            //Insert(SetInfo(3,"小弱鸡三号","hahahh"));

            //批量插入
            /*List Infos = new List();
            Infos.Add(SetInfo(4, "小弱鸡四号", "sdfeff"));
            Infos.Add(SetInfo(5, "小弱鸡五号", "sdfsdfdf"));
            Infos.Add(SetInfo(6, "小弱鸡六号", "sdfe多维ff"));

            Insert(Infos);*/

            //删除;
            //Delete(SetInfo(2, "小弱鸡", "here~"));

            //更新
            //Update(SetInfo(2, "小弱鸡二号·改", "hahahh"));

            List test = Query();
            string TestInfo = "";

            for (int i = 0; i < test.Count; i++)
            {
                TestInfo = test[i].action_id.ToString() + " , " + test[i].parent_id + " , " + test[i].action_code + " , " + test[i].relevance;
                Console.WriteLine(TestInfo);
            }

            Console.ReadLine();
        }

        /// 
        /// 无条件查询所有;
        /// 

        /// 
        public static List Query()
        {
            using (IDbConnection connection = new MySqlConnection(constr))
            {
                return connection.Query("select * from sdx_admin_action").ToList();
            }
        }

        /// 
        /// 设置Info对象并返回
        /// 

        /// 
        /// 
        /// 
        /// 
        public static Info SetInfo(int var_parent_id,string var_action_code, string var_relevance)
        {
            Info tmp = new Info();
            tmp.parent_id = var_parent_id;
            tmp.action_code = var_action_code;
            tmp.relevance = var_relevance;
            return tmp;
        }

        /// 
        /// 执行插入,插入单条信息;
        /// 

        /// 
        public static int Insert(Info varInfo)
        {
            using (IDbConnection connection = new MySqlConnection(constr))
            {
                return connection.Execute(
                    "insert into sdx_admin_action(parent_id,action_code,relevance) values(@parent_id,@action_code,@relevance)", varInfo);
            }
        }

        /// 
        /// 批量执行插入;
        /// 

        /// 
        /// 
        public static int Insert(List varInfo)
        {
            using (IDbConnection connection = new MySqlConnection(constr))
            {
                return connection.Execute(
                    "insert into sdx_admin_action(parent_id,action_code,relevance) values(@parent_id,@action_code,@relevance)",varInfo
                    );
            }
        }

        /// 
        /// 删除指定条件的行信息;
        /// 

        /// 
        /// 
        public static int Delete(Info info)
        {
            using (IDbConnection connection = new MySqlConnection(constr))
            {
                return connection.Execute(
                    "delete from sdx_admin_action where action_code=@action_code",info
                    );
            }
        }

        /// 
        /// 更新
        /// 

        /// 
        /// 
        public static int Update(Info info)
        {
            using (IDbConnection connection = new MySqlConnection(constr))
            {
                return connection.Execute(
                    "Update sdx_admin_action set action_code=@action_code where parent_id=@parent_id",info
                    );
            }
        }
    }
}    

本文由职坐标整理并发布,希望对同学们学习MySQL有所帮助,更多内容请关注职坐标数据库MySQL数据库频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程