• 1、类库


    一、

    using MySql.Data.MySqlClient;
    using System;
    using System.Collections.Generic;
    using System.Configuration;
    using System.Data;
    using System.Text;
    
    namespace DbHelper
    {
        public sealed class MySqlHelper
        {
            //数据库连接字符串
    
            public static string Conn = "Data Source=120.79.21.96;User ID=Test;Password=Test;Database=Test;Allow User Variables=True;Charset=utf8;";
    
            //ExecuteNonQuery 主要用在插入,更新,删除 一般情况用在查询的时候返回的是-1 
            //ExecuteScalar 返回的是 查询结果的一个第一行第一列的值 
            //MySqlDataReader 
            //MySqlDataAdapter 数据集
    
            /// <summary>
            /// 插入,更新,删除主要返回影响的行数-影响的结果
            /// </summary>
            /// <param name="sqlStr"></param>
            /// <param name="parameters"></param>
            /// <returns></returns>
            public static int ExecuteNonQuery(string sqlStr, params MySqlParameter[] paras)
            {
                using (MySqlConnection conn = new MySqlConnection(Conn))
                {
                    conn.Open();
                    MySqlCommand cmd = new MySqlCommand(sqlStr, conn);
                    foreach (MySqlParameter p in paras)
                    {
                        cmd.Parameters.Add(p);
                    }
                    int val = cmd.ExecuteNonQuery();
                    cmd.Parameters.Clear();
                    return val;
                }
            }
            public static int ExecuteNonQueryId(string sqlStr, params MySqlParameter[] paras)
            {
                using (MySqlConnection conn = new MySqlConnection(Conn))
                {
                    conn.Open();//ExecuteNonQuery 必须加
                    MySqlCommand cmd = new MySqlCommand(sqlStr, conn);
                    foreach (MySqlParameter p in paras)
                    {
                        cmd.Parameters.Add(p);
                    }
                    int val = cmd.ExecuteNonQuery();
                    //获取插入后的数据ID
                    long newid = cmd.LastInsertedId;  //插入仅可以修改
                    cmd.Parameters.Clear();
                    return Convert.ToInt32(newid);
                }
            }
    
            /// <summary>
            /// sql的时候可以查询 insert into TEST(VAL1) values('AAAAAAAAAAAAAA')  select @@identity as Id   --;可选
            /// 或者只想结果集第一个
            /// </summary>
            /// <param name="sqlStr"></param>
            /// <param name="paras"></param>
            /// <returns></returns>
            public static object ExecuteScalar(string sqlStr, params MySqlParameter[] paras)
            {
                using (MySqlConnection conn = new MySqlConnection(Conn))
                {
                    conn.Open();//ExecuteScalar 必须加
                    MySqlCommand cmd = new MySqlCommand(sqlStr, conn);//建立命令
                    foreach (MySqlParameter p in paras)
                    {
                        cmd.Parameters.Add(p);
                    }
                    object val = cmd.ExecuteScalar();
                    cmd.Parameters.Clear();
                    return val;
                }
            }
    
            //查询数据
            /// <summary>
            /// 
            /// </summary>
            /// <param name="sql">sql语句</param>
            /// <param name="paras">参数可选</param>
            /// <returns></returns>
            public static DataSet GetDataDataSet(string sql, params MySqlParameter[] paras)
            {
                using (MySqlConnection conn = new MySqlConnection(Conn))
                {
                    MySqlCommand command = new MySqlCommand(sql, conn);
                    DataSet dt = new DataSet();//DataSet方便取Datatable
                    MySqlDataAdapter sda = new MySqlDataAdapter(command);
                    sda.SelectCommand.Parameters.AddRange(paras);
                    sda.Fill(dt);
                    return dt;
                }
            }
    
    
        }
    }

    使用方式:

    using System;
    using System.Collections.Generic;
    using System.Diagnostics;
    using System.Linq;
    using System.Threading.Tasks;
    using Microsoft.AspNetCore.Mvc;
    using Ban.Models;
    using DbHelper;
    using System.Data;
    using System.Data.SqlClient;
    using MySql.Data.MySqlClient;
    
    namespace Ban.Controllers
    {
        public class HomeController : Controller
        {
            public IActionResult Index()
            {
                //查询无参数
                //DataSet ds = DbHelper.MySqlHelper.GetDataDataSet("select * from Account");
    
                //有参数
                //MySqlParameter[] paras = new MySqlParameter[1];
                //paras[0] = new MySqlParameter("@Acco_ID", MySqlDbType.Int32);
                //paras[0].Value = 7;
                //DataSet ds1 = DbHelper.MySqlHelper.GetDataDataSet("select * from Account where Acco_ID=@Acco_ID", paras);
    
                //插入
                //string sql = "INSERT INTO `Account` (`Acco_ID`, `Acco_Name`, `Acco_NickName`, `Acco_PASSWORD`, `Acco_Sex`, `Acco_Birthday`, `Acco_Job`, `Acco_Email`, `Acco_Status`, `Acco_Remark`, `Acco_Avatar`, `Acco_Phone`, `Acco_IsValid`, `Acco_Created`, `images`) VALUES (NULL, '测试2', '测试2昵称', '测试2密码', NULL, NULL, NULL, '', '', '', '', NULL, NULL, CURRENT_TIMESTAMP, NULL);";
                //int result=DbHelper.MySqlHelper.ExecuteNonQuery(sql);
    
                //插入可带参数
                ////MySqlParameter[] paras = new MySqlParameter[1];
                ////paras[0] = new MySqlParameter("@Acco_Name", MySqlDbType.VarChar);
                ////paras[0].Value = "测试3";
                ////string sql = "INSERT INTO `Account` (`Acco_ID`, `Acco_Name`, `Acco_NickName`, `Acco_PASSWORD`, `Acco_Sex`, `Acco_Birthday`, `Acco_Job`, `Acco_Email`, `Acco_Status`, `Acco_Remark`, `Acco_Avatar`, `Acco_Phone`, `Acco_IsValid`, `Acco_Created`, `images`) VALUES (NULL, @Acco_Name, '测试2昵称', '测试2密码', NULL, NULL, NULL, '', '', '', '', NULL, NULL, CURRENT_TIMESTAMP, NULL);";
                ////int result = DbHelper.MySqlHelper.ExecuteNonQuery(sql,paras);
    
                string sql = "INSERT INTO `Account` (`Acco_ID`, `Acco_Name`, `Acco_NickName`, `Acco_PASSWORD`, `Acco_Sex`, `Acco_Birthday`, `Acco_Job`, `Acco_Email`, `Acco_Status`, `Acco_Remark`, `Acco_Avatar`, `Acco_Phone`, `Acco_IsValid`, `Acco_Created`, `images`) VALUES (NULL, '测试6', '测试2昵称', '测试2密码', NULL, NULL, NULL, '', '', '', '', NULL, NULL, CURRENT_TIMESTAMP, NULL);select @@identity as Id";
                var result=DbHelper.MySqlHelper.ExecuteScalar(sql);
    
                return View();
            }
    
            public IActionResult Privacy()
            {
                return View();
            }
    
            [ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)]
            public IActionResult Error()
            {
                return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier });
            }
        }
    }
  • 相关阅读:
    webpack loader和插件的编写原理
    vue和react原理性知识点
    详谈Javascript类与继承
    vue项目中要实现展示markdown文件[转载]
    前端知识总结--2 js部分
    前端知识总结--html
    react相关知识点总结
    优秀文章
    项目部署服务器2
    项目部署服务器
  • 原文地址:https://www.cnblogs.com/fger/p/11602874.html
Copyright © 2020-2023  润新知