大家好,小编又来啦  !

今天为大家分享的是关于c#控制台连接mysql数据库 ,用sql语句返回查询的数据

废话不多说,两种方法,直接开整!!!

一:

  1. 首先要下载两个NuGet包

        

控制台连接postgresql 控制台连接数据库执行sql_c#

2.下面是我封装的类,只可以用来返回查询结果,代码如下:

public class MysqlHelper
    {
        //这是我数据库的本地连接  server是ip,port端口,user:用户名,password:密码, database:你要查询的数据库  
        public static string Constring = "server=localhost;port=3306;user=root;password=123456; database=knowledge;";
        public static DataTable ConnStr(string Sql)
        {
            //创建一个表格
            DataTable dt = new DataTable();
            try
            {
                //创建连接对象、连接数据库
                //其中,Constring是数据连接字串,用来初始化Connection对象,说明如何连接数据库,
                //当数据库连接完毕后,可以使用Open方法打开数据连接。完成数据库连接后,需创建一个新的Command对象,示例代码如下所示。
                MySqlConnection conn = new MySqlConnection(Constring);
                //打开通道,建立连接,可能出现异常,建议使用try catch语句
                conn.Open();
                //Command对象的构造函数的参数有两个,
                //一个是需要执行的SQL语句,另一个是数据库连接对象。
                //创建Command对象后,就可以执行SQL命令,执行后完成并关闭数据连接,示例代码如下所示。
                MySqlCommand cmd = new MySqlCommand(Sql, conn);
                //执行SQL命令
                MySqlDataReader dr = cmd.ExecuteReader();
                dt.Load(dr);
                conn.Close(); //关闭连接
            }
            catch (Exception ex)
            {

                throw new Exception(ex.Message);
            }
            //返回表格
            return dt;

        }

    }

3.调用方法

//想要执行的sql语句

string sql = $"SELECT * FROM mycobacterium";
DataTable? dataTable = MysqlHelper.ConnStr(sql);
Console.ReadLine();

 注意:因为上边的封装类里边 我是用DataTable填充的数据,所以在 调方法的时候,也要用DataTable去接这个方法才可以

3.给大家看一下我的运行效果

控制台连接postgresql 控制台连接数据库执行sql_控制台连接postgresql_02

 二:

      如果大家不喜欢上边的方法还可以用第二种

      通过实例化Context 上下文   

      用Linq语句查询,但是前提  上边的两个NuGet包还是要下载的

      上代码!!

     1:

//想要执行的sql语句
//实例化上下文
KnowledgeContext _dbContext = new KnowledgeContext();
//要执行的sql语句
string sql = $"SELECT * FROM mycobacterium";
//数据
var data = _dbContext.Mycobacteria.FromSqlRaw(sql).ToList();

       大家如果想问   我的上下文的Context  怎么来的 ,那得把数据库的表转化为实体到咱们的代码上,生成的Context,大家如果有需要可以看我主页的作品参考