C#连接MySql数据库

//建立连接
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()
  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值