C# - 在声明它的函数之外使用DataSet

时间:2014-03-31 16:28:36

标签: c# mysql datagridview dataset

我试图创建一个从数据库中检索数据并将其显示在DataGridView中的小程序。我遵循了一个教程,到目前为止我的代码是:

void loadData()
        {
            string MyConnectionString = "Server = localhost; Database = liste; Uid = root; Pwd = password;";
            MySqlConnection connection = new MySqlConnection(MyConnectionString);
            connection.Open();

            try
            {
                MySqlCommand cmd = connection.CreateCommand();
                cmd.CommandText = "SELECT * FROM `personnel`";
                MySqlDataAdapter adap = new MySqlDataAdapter(cmd);
                DataSet ds = new DataSet();
                adap.Fill(ds);
                enlistedGrid.DataSource = ds.Tables[0].DefaultView;
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                if (connection.State == ConnectionState.Open)
                {
                    connection.Close();
                }
            }
        }

我知道在同一个函数中声明连接字符串是一个坏主意,但这不会公开,所以它没有问题。在InitializeComponent()之后调用此函数并正确加载数据。

我现在正在尝试创建一个按钮,单击该按钮将刷新此数据并获取任何更改/新记录。我认为要做到这一点我需要编码,以便在单击按钮时清除DataSet,然后再次调用loadData()。我遇到的问题是我无法使用' ds'在另一个功能 - 它只是不让我。我对编程很陌生,所以我不知道为什么会这样,我很感激能解释为什么以及如何修复它/刷新按钮的人。

非常感谢大家,非常感谢。

0 个答案:

没有答案