//建立连接
string connectStr = "server=127.0.0.1; User Id=root; password=; Database=studentdb;SslMode=none;Charset=utf8";
MySqlConnection conn = new MySqlConnection(connectStr);
//写查询语句,拼接式易sql注入不安全(or 1=1),单引号易出错,推荐参数化sql
//string sql = "select count(1) from UserInfo where UserName = '" + uName + "' and UserPwd='" + uPwd + "'";
string sql = "select count(1) from UserInfo where UserName = @UserName and UserPwd = @UserPwd";
//添加参数
//MySqlParameter paraName = new MySqlParameter("@UserName",uName);
//MySqlParameter paraPwd = new MySqlParameter("@UserPwd",uPwd);
MySqlParameter[] para = {
new MySqlParameter("@UserName", uName) , new MySqlParameter("@UserPwd", uPwd) };
//创建Command对象
MySqlCommand cmd = new MySqlCommand(sql, conn);
cmd.Parameters.Clear();
//cmd.Parameters.Add(paraName);
//cmd.Parameters.Add(paraPwd);
cmd.Parameters.AddRange(para);
//cmd.CommandType = CommandType.StoredProcedure;//存储过程
//打开连接,最晚打开,最早关闭
conn.Open();
//执行查询命令
object o = cmd.ExecuteScalar();//返回第一行第一列的值
//cmd.ExecuteNonQuery();//返回受影响的行数
//cmd.ExecuteReader();//返回数据流,相当于一个游标,读取到下一行数据时,上一行数据被抛弃
//关闭连接
conn.Close();
封装工具类:
<connectionStrings>
<add name="connStr" connectionString="server=127.0.0.1; User Id=root; password=123456; Database=studentdb;SslMode=none;Charset=utf8"
providerName="MySql.Data.MySqlClient"/>
</connectionStrings>
public static class MySqlHelper
{
public static readonly string connStr = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
/// <summary>
/// 查询,返回结果集中第一行的第一列
/// </summary>
/// <param name="sql"></param>
/// <param name="paras"></param>
/// <returns></returns>
public static object ExecuteScalar(string sql, params MySqlParameter[] paras)
{
object o = null;
using (MySqlConnection conn = new MySqlConnection(connStr))
{
//创建Command对象
MySqlCommand cmd = new MySqlCommand(sql, conn);
cmd.Parameters.Clear();
//cmd.Parameters.Add(paraName);
//cmd.Parameters.Add(paraPwd);
cmd.Parameters.AddRange(paras);
//cmd.CommandType = CommandType.StoredProcedure;//存储过程
//打开连接,最晚打开,最早关闭
conn.Open()