0

最近我有很多关于 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 语句。

4

1 回答 1

1

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

编辑: 使用您的代码,我不确定如何处理并发。但是 Nhibernate 会为您做到这一点。读这个

阅读内容以了解并发概念详细信息

于 2012-12-18T12:30:34.907 回答