使用Visual Studio实现C#连接和使用Mysql,无需下载安装任何MySQL插件,直接使用using导入包即可。
无参插入、删除、修改操作(插入代码后部分关键字报错,alt+enter或ctrl+.提示引入包即可)
//定义一个方法,sql是要传入的数据库语句
public int excute(string sql)
{
//这里设置你的MySQL数据库信息
string str = "server=127.0.0.1; port = 3306; user= root; password = 123456;database =lianxi;Charset=utf8;Allow User Variables=True;";
MySqlConnection conn = new MySqlConnection(str);
conn.Open();
MySqlCommand cmd = new MySqlCommand(sql, conn);
int count = cmd.ExecuteNonQuery();
conn.Close();
//执行成功返回1
return count;
}
//调用,以插入为例
string sql = "insert into student('小孙','123456')";
int count = excute(sql);
有参插入、删除、修改操作
//定义一个方法,sql是要传入的数据库语句,para是要传的参数
public int excute(string sql,MySqlParameter[] para)
{
//这里设置你的MySQL数据库信息
string str = "server=127.0.0.1; port = 3306; user= root; password = 123456;database = lianxi;Charset=utf8;Allow User Variables=True;";
MySqlConnection conn = new MySqlConnection(str);
conn.Open();
MySqlCommand cmd = new MySqlCommand(sql, conn);
//这里para不为null就传入参数,如果为null,效果等同于上面的无参插入删除修改操作
if (para != null)
cmd.Parameters.AddRange(para);
int count = cmd.ExecuteNonQuery();
conn.Close();
return count;
}
//调用,以插入为例
string sql = "insert into student(name,pwd)values(@name,@pwd)";
//定义参数对应的占位符对象
MySqlParameter[] para = {
new MySqlParameter("@name","小孙"),
new MySqlParameter("@pwd","123456")
};
int count = db.excute(sql,para);
查询操作
//定义一个方法,sql是要传入的数据库语句,para是要传入的数据库语句里的参数
public DataSet getDataSet(string sql, SqlParameter[] para) {
//这里设置你的MySQL数据库信息
string str = "server=127.0.0.1; port = 3306; user= root; password = 123456;database = lianxi;Charset=utf8;Allow User Variables=True;";
DataSet ds=new DataSet();
string strSql = getConnectString();
//首先建立连接对象
SqlConnection conn = new SqlConnection(str);
//在这里执行语句用adapter不是command
SqlDataAdapter adapter=new SqlDataAdapter(sql,conn);
if(para!=null)
adapter.SelectCommand.Parameters.AddRange(para);
adapter.Fill(ds);
return ds;
}
//调用
List<SysUser> list = new List<SysUser>();
string sql = "select * from sysuser ";
Dbutil util = new Dbutil();
DataSet ds= util.getDataSet(sql, null);
if (ds != null)
{
DataTable dt = ds.Tables[0];
for (int i = 0; i < dt.Rows.Count; i++)
{
DataRow row = dt.Rows[i];
SysUser user = new SysUser();
user.Id = int.Parse(row["id"].ToString());
user.Uname = row["uname"].ToString();
user.Pwd = row["pwd"].ToString();
//将当前行封装数据添加到集合
list.Add(user);
}