基于C#编程语言的Mysql常用操作

一、开始需要先将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 = 12000;
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 = 12000;
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 = 12000;
da.Fill(ds, "ds"); //将查询到的数据填充到数据集dataset中,
dt=ds.Tables[0];

六、插入

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 = 12000;
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 = 12000;
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 = 12000;
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 = 12000;
  mda.Fill(ds, "ds");
  if (ds.Tables.Count > 0)
  {
      dt = ds.Tables[0];
  }
  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 = 12000;
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 = 12000;
if (m_trans != null)
{
    int iRecordAffected = cmd.ExecuteNonQuery();
    m_trans.Rollback();      //在事务提交之前调用事务的回滚方法,可以返回到事务开始前的数据库状态,相当于此次事务内对数据库的操作无效。
}

转载自你是我的四月天

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值