在C#的控制台应用中使用Dapper链接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";
再添加无条件查询的代码:
/// <summary>
/// 无条件查询所有;
/// </summary>
/// <returns></returns>
public static List<Info> Query()
{
using (IDbConnection connection = new MySqlConnection(constr))
{
return connection.Query<Info>("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<Info> Infos = new List<Info>();
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<Info> test = Query();
string TestInfo = ""; for (int i = ; 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();
} /// <summary>
/// 无条件查询所有;
/// </summary>
/// <returns></returns>
public static List<Info> Query()
{
using (IDbConnection connection = new MySqlConnection(constr))
{
return connection.Query<Info>("select * from sdx_admin_action").ToList();
}
} /// <summary>
/// 设置Info对象并返回
/// </summary>
/// <param name="var_parent_id"></param>
/// <param name="var_action_code"></param>
/// <param name="var_relevance"></param>
/// <returns></returns>
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;
} /// <summary>
/// 执行插入,插入单条信息;
/// </summary>
/// <returns></returns>
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);
}
} /// <summary>
/// 批量执行插入;
/// </summary>
/// <param name="varInfo"></param>
/// <returns></returns>
public static int Insert(List<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
);
}
} /// <summary>
/// 删除指定条件的行信息;
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
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
);
}
} /// <summary>
/// 更新
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
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
);
}
}
}
}
参考文档:https://www.jianshu.com/p/c4ca2989d26a
在C#的控制台应用中使用Dapper链接MySQL并执行一些增删改查的更多相关文章
- 48.Python中ORM模型实现mysql数据库基本的增删改查操作
首先需要配置settings.py文件中的DATABASES与数据库的连接信息, DATABASES = { 'default': { 'ENGINE': 'django.db.backends.my ...
- PHP程序中使用PDO对象实现对数据库的增删改查操作的示例代码
PHP程序中使用PDO对象实现对数据库的增删改查操作(PHP+smarty) dbconn.php <?php //------------------------使用PDO方式连接数据库文件- ...
- AngularJS中使用$http对MongoLab数据表进行增删改查
本篇体验使用AngularJS中的$http对MongoLab数据表进行增删改查. 主页面: <button ng-click="loadCourse()">Load ...
- mysql实现简单的增删改查,放入xmapp自带数据库中
1.mysql概念:SQL-Structured Query Language,是一种特殊的语言,专用于操作关系型数据库服务器中的数据,所有的SQL语句分为四类: (1)DDL(2)DQL(3)DML ...
- django中的forms组件(权限信息校验,增删改查)
1.用处 1.用户请求数据验证 2.自动生成错误信息 3.打包用户提交的正确信息 4.如果其中有一个错误了,其他的正确,则保留上次输入的内容 5.自动创建input标签并可以设置样式 6.基于form ...
- IDEA中通过工具类实现对数据库的增删改查
package com.hu.dao; import com.hu.entity.Student; import java.util.List;import java.util.Map; public ...
- 阶段3 1.Mybatis_06.使用Mybatis完成DAO层的开发_6 Mybatis中使用Dao实现类的执行过程分析-增删改方法
从测试类入手,断点调试 找到实现类,进入到insert方法里面 这里是SqlSession的接口里面的方法. 我们需要找SqlSession的实现类. DefaultSqlSession 里面有两个i ...
- 简述ADO中如何使用参数化的命令对象以及增删改查,存储过程的操作
连接数据库代码: private SqlConnection con = null; public void OpenConnection(string connectionString) { con ...
- symfony2中mysql和mongodb的增删改查总结
https://www.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/data-retrieval-and-manip ...
随机推荐
- git 添加远程仓
1.新建远程项目 2.提交代码 $ makdir ~/hello-world //创建一个项目hello-world $ cd ~/hello-world //打开这个项目 ...
- WPF项目学习.三
工具代码记录 版权声明:本文为博主初学经验,未经博主允许不得转载. 一.前言 记录在学习与制作WPF过程中遇到的解决方案. 分页控件的制作,邮件发送,日志代码,excel导入导出等代码的实现过程: 二 ...
- 揽货最短路径解决方案算法 - C# 蚁群优化算法实现
需求为(自己编的,非实际项目): 某配送中心进行揽货,目标客户数为50个客户,配送中心目前的运力资源如下: 现有车辆5台 单台运力最大行驶距离200千米 单台运力最大载重公斤1吨 问:运力怎样走法才能 ...
- Java经典编程题50道之三十四
输入3个数a,b,c,按大小顺序输出. public class Example34 { public static void main(String[] args) { sort ...
- MIPS中有关于分支指令及跳转寻址
分支指令 分支指令包含该指令,和两个操作数,以及跳转的分支地址,该地址是相对于下一条指令的相对地址 分支指令占6位 操作数1占5位 操作数2占5位 分支指令16位 例如 bne ...
- PAT1119. Pre- and Post-order Traversals
思路:中序遍历–根结点,左子树,右子树:后序遍历–左子树,右子树,根结点. 那么在找到根结点之后就可以开始划分左右子树了.左子树的先序第一个节点是根,左子树的后序最后一个节点是根. 例如 1 2 3 ...
- hdu1251 map水过
更快的方法应该是字典树,不用处理前缀. AC代码: #include<iostream> #include<cstring> #include<string> #i ...
- rem是如何自适应的
原文链接:http://caibaojian.com/web-app-rem.html 摘要:rem是相对于根元素<html>,这样就意味着,我们只需要在根元素确定一个px字号,则可以来算 ...
- 将FTP映射至Windows
在经常使用ftp传输文件的环境中,每次上传和下载文件都需要重新连接然后登录是非常繁琐的一件事情.我们可以将FTP空间映射到本地磁盘空间,免去输入地址以及账号.密码.方便我们日常中文件的上传和下载. 1 ...
- 工作中常用的linux命令(2)
1.find :查找指定文件名的路径: 列出当前目录以及子目录中的所有文件: 在当前目录下寻找特定文件名的文件: 列出长度为零的文件: 2.ps :查看某个程序的进程,例如查询mongodb和mysq ...