在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 ...
随机推荐
- Mysql大数据备份和增量备份及还原
目前主流的有两个工具可以实现物理热备:ibbackup和xtrabackup ;ibbackup是需要授权价格昂贵,而xtrabackup功能比ibbackup强大而且是开源的 Xtrabackup提 ...
- qemu-trustzone编译&运行(包含linux内核的编译方法)
由于之前都是用的mtk6797开发板,回到实验室之后想要做实验的话需要弄一个支持trustzone的qemu,在这里记录一下我的编译和调试过程.本来最近一直忙着看论文和写论文,但是忽然发现自己在实验部 ...
- 使用nodejs搭建api的mock服务
1. 介绍 公司的业务开发都是静态页面,开发前期总是避免不了获取api的问题.在vue中有一些mockjs的方案,方案都是注入性质的,和最终部署总是有差别,而且业务大部分还在zepto下,很难找到合适 ...
- Egret学习笔记 (Egret打飞机-8.敌机和主角飞机发射子弹)
经过前面几章的准备,我们差不多已经具备了一个基本的框架,这一章我们就开始添砖加瓦了. 敌机定时发射一个子弹,子弹的方向是从上到下,但是发射子弹的代码应该放在哪儿呢? 从面向对象编程的思想来说,子弹是敌 ...
- 各种语系的unicode对应以及local编码方式
链接:http://www.doc88.com/p-801578373970.html 一.英文 Unicode范围: 0041-005A, 0061-007A (若含数字与符号,则为0021-007 ...
- 2道acm编程题(2014):1.编写一个浏览器输入输出(hdu acm1088);2.encoding(hdu1020)
//1088(参考博客:http://blog.csdn.net/libin56842/article/details/8950688)//1.编写一个浏览器输入输出(hdu acm1088)://思 ...
- 一、Python介绍
Python 是一门什么样的语言? python是一门动态解释性的强类型定义语言. 编程语言主要从以下几个角度为进行分类,编译型和解释型.静态语言和动态语言.强类型定义语言和弱类型定义语言,每个分类代 ...
- 你不知道的JavaScript之类型
JavaScript是一门简单易用的语言,应用广泛,同时它的语言机制又十分复杂和微妙,即使经验丰富的开发人员也需要用心学习才能真正掌握. <你不知道的JavaScript>中是这样定义类型 ...
- Java中的return关键字
Java常见面试题之一: try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后? 请看下面程序就可以解释 ...
- 我博客上的围棋js程序
作为一个围棋爱好者,就决定在博客里加个围棋js程序.于是,申请了博客的js权限,美化美化我的博客. 好在js的语法像C系的,看了看,写个程序应该还是可以的. 围棋里,设计好基本的数据结构: //a是1 ...