C#数据库连接类不工作

本文关键字:工作 数据库连接 | 更新日期: 2023-09-27 18:24:44

我正在学习C#数据库连接教程,但他们为连接类提供的代码有问题,它在dat_set上有一个错误,我认为需要将其设置为变量,但我不确定。看过很多次教程提供的代码后,我得到的是完全相同的

错误是这些线

da_1.Fill(dat_set, "Table_Data_1");
return dat_set;

这是我的

using System.Data.Sql;
using System.Data.SqlClient;
using System.Data;
namespace JBT
{
    class DBConnect
    {
        private string sqlString;
        private string strCon;
        System.Data.SqlClient.SqlDataAdapter da_1;
        public string Sql
        {
            set { sqlString = value; }
        }
        public string connection_string
        {
            set { strCon = value; }
        }
        public System.Data.DataSet GetConnection
        {
            get
            { return MyDataSet(); }
        }
        private System.Data.DataSet MyDataSet()
        {
            System.Data.SqlClient.SqlConnection con = new System.Data.SqlClient.SqlConnection(strCon);
            con.Open();
            da_1 = new System.Data.SqlClient.SqlDataAdapter(sqlString, con);
            da_1.Fill(dat_set, "Table_Data_1");
            con.Close();
            return dat_set;
        }


    }
}

C#数据库连接类不工作

需要在之前初始化要填充的数据集

  private System.Data.DataSet MyDataSet()
  {
        System.Data.SqlClient.SqlConnection con = new System.Data.SqlClient.SqlConnection(strCon);
        con.Open();
        da_1 = new System.Data.SqlClient.SqlDataAdapter(sqlString, con);
        System.Data.DataSet dat_set = new System.Data.DataSet();
        da_1.Fill(dat_set, "Table_Data_1");
        con.Close();
        return dat_set;
    }

当然,只有在调用此代码之前初始化了sqlStringstrCon,这才能工作。这应该是假设的,因为您说错误发生在填充行

如果使用Mysql,则System.Data.DataSet MyDataSet()不是必须放入代码中的内容

首先初始化代码。然后编写打开和关闭连接的方法。现在您已经准备好进行数据库连接了。

    public class DbConnection
    {
    private MySqlConnection connection;
    private string server;
    private string database;
    private string uid;
    private string password;
    private void initialize()
    {
        server = "localhost";
        database = "yourdatabase";
        uid = "root";
        password = "";
        string connectionString = "server=" + server + ";database=" + database + ";uid=" + uid + ";password=" + password + ";";
        connection = new MySqlConnection(connectionString);
    }
    //open connection
    private bool openConnection()
    {
        try
        {
            connection.Open();
            return true;
        }
        catch(MySqlException ex)
        {
            switch(ex.Number)
            {
                    case 0:
                    MessageBox.Show("Cannot connect to server.  Contact administrator");
                    break;
                    case 1045:
                    MessageBox.Show("Invalid username/password, please try again");
                    break;
            }
            return false;
        }

    }

如果您想开发完整的数据库连接,请使用此网站:http://www.codeproject.com/Articles/43438/Connect-C-to-MySQL对我帮助很大:)