1、開始須要先將C#中與mysql相關的引用添加進來mysql
using MySql.Data.MySqlClient;
2、建立一個databasesql
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();
3、建立一個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();
4、鏈接mysql,建立一個鏈接對象,接着開其啓對象測試
MySqlConnection m_conn = new MySqlConnection("server=localhost;user id=root;password=root;persist security info=True;database=test");//建立mysql的鏈接對象 m_conn.Open();//開啓鏈接
5、查詢spa
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];
6、插入code
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();//返回插入了幾條數據
7、更新server
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();//返回更新了幾條數據
8、刪除對象
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();//返回刪除了幾條數據
9、事務查詢blog
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() }
10、事務插入,事務更新,事務刪除除了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() }
11、事務回滾
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(); //在事務提交以前調用事務的回滾方法,能夠返回到事務開始前的數據庫狀態,至關於這次事務內對數據庫的操做無效。 }