c# - C# 中的动态 Select 语句到 MySQL 数据库?

标签 c# mysql select

最近我有很多关于 MySQL 中 SQL 语句的问题,但没有一个符合我的目的。

我有一个类,它将保存我的 SQL 语句,以便我可以将它们用作保持代码整洁的方法。我已经完成了 Insert、Update、Delete 和 Count 语句,但我似乎找不到 SELECT 语句的解决方案

以下是其他语句的代码:

public void Insert(string query)
    {
        if (OpenConnection() == true)
        {
            MySqlCommand cmd = new MySqlCommand(query, mycon);
            cmd.ExecuteNonQuery();
            CloseConnnection();
        }
    }

    public void Update(string query)
    {
        if (OpenConnection() == true)
        {
            MySqlCommand cmd = new MySqlCommand();
            cmd.CommandText = query;
            cmd.Connection = mycon;

            cmd.ExecuteNonQuery();
            CloseConnnection();
        }
    }

    public void Delete(string query)
    {
        if (OpenConnection() == true)
        {
            MySqlCommand cmd = new MySqlCommand(query, mycon);
            cmd.ExecuteNonQuery();
            CloseConnnection();
        }
    }

    public int Count(string query)
    {
        int count = 0;

        if (OpenConnection() == true)
        {
            MySqlCommand cmd = new MySqlCommand(query, mycon);

            count = int.Parse(cmd.ExecuteScalar() + "");

            CloseConnnection();

            return count;
        }

        else
        {
            return count;
        }
    }

我正在考虑一个看起来像这样的 SELECT 方法:

    public string[] Select(string query, int colnum)
    {
        if (OpenConnection() == true)
        {
            MySqlCommand cmd = new MySqlCommand(query, mycon);
            MySqlDataReader dr = new MySqlDataReader();
            string[] info = new string[colnum];
            dr = cmd.ExecuteReader();
            while (dr.Read())
            {
                for (int i = 0; i <= colnum; i++)
                {
                  info[i] = (dr[colnum].ToString());
                }
            }
        }
    }

这行代码完全是虚构的info[i] = (dr[colnum].ToString()); 因为我知道它不会按照我想要的方式运行。我正在寻找具有类似逻辑的东西或类似的东西,可以让我通过使用方法来利用 SELECT 语句。

最佳答案

为什么不使用 Nhibernate (http://nhforge.org/)。阅读 http://geekswithblogs.net/pariam/archive/2006/07/26/86352.aspx有关将 nhibernate 与 mysql 一起使用的教程

编辑: 对于您的代码,我不确定如何处理并发性。但 Nhibernate 会为你做到这一点。阅读 this

阅读this有关并发概念的详细信息

关于c# - C# 中的动态 Select 语句到 MySQL 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13932950/

相关文章:

c# - Entity Framework 核心存储过程

c# - 使用 SWIG 从 c# 使用 c++ uint8_t *

php - MySql 选择日期为上个月或更早日期的记录

javascript - 如何获取Javascript选择框的选定文本

python - 从坐标元组列表中选择最小值

javascript - 没有 ng-model AngularJS 选择不起作用

c# - 使用什么来安排 .NET 应用程序每天运行?

c# - 在 C# 中使用 lambda 检查 LINQ Sum() 方法中的值

mysql - 哪个在 MySQL where 子句 : YEAR() vs BETWEEN? 中表现更好

php mysql查询表单将值发送到其他页面