一、开始需要先将C#中与mysql相关的引用添加进来

using MySql.Data.MySqlClient;

二、创建一个database

MySqlConnection m_conn = new MySqlConnection("server=localhost;user id=root;password=root;persist security info=True");
m_conn.Open();
MySqlCommand cmd = new MySqlCommand("CREATE DATABASE TEST", m_conn);
cmd.CommandTimeout = ;
cmd.ExecuteNonQuery();

三、创建一个table

MySqlConnection m_conn = new MySqlConnection("server=localhost;user id=root;password=root;persist security info=True;database=test");
m_conn.Open();
MySqlCommand cmd = new MySqlCommand("CREATE TABLE PERSON(ID INT(4) PRIMARY KEY NOT NULL AUTO_INCREMENT,PERSONCODE VARCHAR(255) DEFAULT NULL,PERSONNAME1 VARCHAR(255) DEFAULT NULL)", m_conn);
cmd.CommandTimeout = ;
cmd.ExecuteNonQuery();

四、连接mysql,创建一个连接对象,接着开其启对象

MySqlConnection m_conn = new MySqlConnection("server=localhost;user id=root;password=root;persist security info=True;database=test");//创建mysql的连接对象
m_conn.Open();//开启连接

五、查询

MySqlConnection m_conn = new MySqlConnection("server=localhost;user id=root;password=root;persist security info=True;database=test");
m_conn.Open();
DataTable dt = new DataTable("ds");
DataSet ds = new DataSet(); //创建一个数据集来存放查询的返回结果
MySqlDataAdapter da = new MySqlDataAdapter("SELECT * FROM TEST.PERSON", m_conn); //创建一个数据适配器来查找数据
da.SelectCommand.CommandTimeout = ;
da.Fill(ds, "ds"); //将查询到的数据填充到数据集dataset中,
dt=ds.Tables[];

六、插入

MySqlConnection m_conn = new MySqlConnection("server=localhost;user id=root;password=root;persist security info=True;database=test");
m_conn.Open();
MySqlCommand cmd = new MySqlCommand("INSERT INTO test.person(personcode,personname1) values('123456','测试老王')", m_conn);
cmd.CommandTimeout = ;
int iRecordAffected = cmd.ExecuteNonQuery();//返回插入了几条数据

七、更新

MySqlConnection m_conn = new MySqlConnection("server=localhost;user id=root;password=root;persist security info=True;database=test");
m_conn.Open();
MySqlCommand cmd = new MySqlCommand("update test.person set personname1='测试王二麻子' where personcode='123456'", m_conn);
cmd.CommandTimeout = ;
int iRecordAffected = cmd.ExecuteNonQuery();//返回更新了几条数据

八、删除

MySqlConnection m_conn = new MySqlConnection("server=localhost;user id=root;password=root;persist security info=True;database=test");
m_conn.Open();
MySqlCommand cmd = new MySqlCommand("delete from test.person where personname1='测试王二麻子' and personcode='123456'", m_conn);
cmd.CommandTimeout = ;
int iRecordAffected = cmd.ExecuteNonQuery();//返回删除了几条数据

九、事务查询

MySqlConnection m_conn = new MySqlConnection("server=localhost;user id=root;password=root;persist security info=True;database=test");
m_conn.Open();
MySqlTransaction m_trans = m_conn.BeginTransaction();
DataTable dt = new DataTable("ds");
DataSet ds = new DataSet();
if (m_trans != null)
{
MySqlDataAdapter mda = new MySqlDataAdapter("SELECT personname1 FROM person", m_conn);
mda.SelectCommand.CommandTimeout = ;
mda.Fill(ds, "ds");
if (ds.Tables.Count > )
{
dt = ds.Tables[];
}
m_trans.Commit(); //事务结束的标志就是调用事务的提交方法commit()
}

十、事务插入,事务更新,事务删除除了SQL语句不同其余都一样

MySqlConnection m_conn = new MySqlConnection("server=localhost;user id=root;password=root;persist security info=True;database=test");
m_conn.Open();
MySqlCommand cmd = new MySqlCommand("INSERT INTO person(personcode,personname1) values('123456','测试老王')", m_conn);
MySqlTransaction m_trans = m_conn.BeginTransaction();
cmd.Transaction = m_trans;
cmd.CommandTimeout = ;
if (m_trans != null)
{
int iRecordAffected = cmd.ExecuteNonQuery();
   m_trans.Commit(); //事务结束的标志就是调用事务的提交方法commit()
}

十一、事务回滚

MySqlConnection m_conn = new MySqlConnection("server=localhost;user id=root;password=root;persist security info=True;database=test");
m_conn.Open();
MySqlCommand cmd = new MySqlCommand("INSERT INTO person(personcode,personname1) values('123456','测试老王')", m_conn);
MySqlTransaction m_trans = m_conn.BeginTransaction();
cmd.Transaction = m_trans;
cmd.CommandTimeout = ;
if (m_trans != null)
{
int iRecordAffected = cmd.ExecuteNonQuery();
m_trans.Rollback(); //在事务提交之前调用事务的回滚方法,可以返回到事务开始前的数据库状态,相当于此次事务内对数据库的操作无效。
}

基于C#编程语言的Mysql常用操作的更多相关文章

  1. mysql常用操作语句

    mysql常用操作语句 1.mysql -u root -p   2.mysql -h localhost -u root -p database_name 2.列出数据库: 1.show datab ...

  2. MySQL常用操作总结

    MySQL常用操作 前提条件:已安装MySQL. 学习目标:用一条sql语句写出A和B的剩余数量 AA表 BB表 以上为一道面试题,接下来由这道面试题来回顾一些数据库的基本操作. 登录MySQL su ...

  3. centos LAMP第四部分mysql操作 忘记root密码 skip-innodb 配置慢查询日志 mysql常用操作 mysql常用操作 mysql备份与恢复 第二十二节课

    centos  LAMP第四部分mysql操作  忘记root密码  skip-innodb 配置慢查询日志 mysql常用操作  mysql常用操作 mysql备份与恢复   第二十二节课 mysq ...

  4. Windows平台下MySQL常用操作与命令

    Windows平台下MySQL常用操作与命令 Windows平台下MySQL常用操作与命令,学习mysql的朋友可以参考下. 1.导出整个数据库 mysqldump -u 用户名 -p --defau ...

  5. MySQL常用操作2

    MySQL常用操作2 判断函数 IF(expr, value1, value2)  --  如果表达式expr为true,则返回value1,否则返回value2 IFNULL(value1, val ...

  6. MYSQL常用操作函数的封装

    1.mysql常用函数封装文件:mysql.func.php <?php /** * 连接MYSQL函数 * @param string $host * @param string $usern ...

  7. 第二篇 Mysql常用操作记录(转载)

    我们在创建网站的时候,一般需要用到数据库.考虑到安全性,建议使用非root用户.常用命令如下: 1.新建用户 //登录MYSQL@>mysql -u root -p@>密码//创建用户my ...

  8. Linux 笔记 - 第十五章 MySQL 常用操作和 phpMyAdmin

    博客地址:http://www.moonxy.com 一.前言 前面几章介绍了 MySQL 的安装和简单的配置,只会这些还不够,作为 Linux 系统管理员,我们还需要掌握一些基本的操作,以满足日常管 ...

  9. mysql常用操作及常见问题

    常用操作 mysql备份: --整库备份 docker exec 容器ID mysqldump -uroot -p密码 --databases 库名 > 库名.sql --仅导出表和数据 mys ...

随机推荐

  1. art-template-loader:template

    ylbtech-art-template-loader: 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部     6.返回顶部   作者:ylbtech出处:ht ...

  2. C#设计模式(9)——装饰者模式

    一.概念 装饰者模式以对客户透明的方式动态地给一个对象附加上更多的责任,装饰者模式相比生成子类可以更灵活地增加功能. 二.模型 三.代码实现 /// <summary> /// 手机抽象类 ...

  3. linux日常管理-防火墙selinux

    关闭防火墙 SELINUX=disabled 可以是三种状态 # enforcing - SELinux security policy is enforced.打开# permissive - SE ...

  4. shell入门-变量

    shell变量分为系统变量和用户自定义变量 查看变量的命令 #env        系统变量 或者 #set    包括env和自定义变量和额外变量 使用变量的命令是 #echo $[变量] //// ...

  5. 17、GATK使用简介 Part2/2

    转载:http://blog.sina.com.cn/s/blog_6721167201018jik.html Change Logs: 13/01/12: 增加了一篇文献,外加一些无聊的修改.12/ ...

  6. Luogu 2900 [USACO08MAR]土地征用Land Acquisition

    斜率优化dp. 首先发现如果存在$x$和$y$使得$len(x) \geq len(y)$并且$wid(x) \geq wid(y)$,那么$y$直接不考虑就好了,因为在买$x$的时候就把$y$顺便带 ...

  7. 如何使用ROS查找rgbdslam代码包框架的输入

    我想这是一个天大的错误,在没有对整个ROS下的代码有一个整体理性的认知时,我使用感性认知. 由于在跑他的测试代码时,只替换了两个节点的名称,相当于remap了它,以为就可以跑了,结果是不行的. 然后用 ...

  8. nextSibling 和nextElementSibling

    在使用DOM过程中发现一个问题: 使用nextSibling 属性返回指定节点之后紧跟的节点,在相同的树层级中.被返回的节点以 Node 对象返回. this.arrow = this.screen. ...

  9. 有关UPDATE操作的一些想法

    我们平常写代码的时候,无疑都会接触大量的数据CURD操作.第一反应是这太简单了,那么你在编写UPDATE操作的时候是怎样的逻辑呢?比较下面两段伪代码: code exp.1 $SQL = " ...

  10. Solr 6.7学习笔记(02)-- 配置文件 managed-schema (schema.xml)(1)

    刚学Solr(版本6.7.0),新建一个core时,提示要求schema.xml文件,我找了半天也没在源码包中找到名为schema.xml的文件.这个版本其实用的是managed-schema文件,没 ...