Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#Oledb连接can';t更新_C#_Database - Fatal编程技术网

C#Oledb连接can';t更新

C#Oledb连接can';t更新,c#,database,C#,Database,我是一名IT专业的学生,一直想进入代码地狱(不,我真的不喜欢我走的这条路),所以我只是一名使用数据库的初学者 所以我有这个问题,特别是,当我试图更新表单或至少是标签本身时,我无法连接到Access数据库,我试图从中获取数据。当我按下按钮时,我想知道我是否可以更新表单或它的以下项,而不丢失与数据库的连接 如果可能的话,还有一个更好的解决方案,如果可能的话,请提前感谢 private void Form1_Load(object sender, EventArgs e) {

我是一名IT专业的学生,一直想进入代码地狱(不,我真的不喜欢我走的这条路),所以我只是一名使用数据库的初学者

所以我有这个问题,特别是,当我试图更新表单或至少是标签本身时,我无法连接到Access数据库,我试图从中获取数据。当我按下按钮时,我想知道我是否可以更新表单或它的以下项,而不丢失与数据库的连接

如果可能的话,还有一个更好的解决方案,如果可能的话,请提前感谢

private void Form1_Load(object sender, EventArgs e)
    {
        Timer timer = new Timer();
        timer.Interval = (1 * 1000);
        timer.Tick += new EventHandler(timer_Tick);
        timer.Start();
    }

    private void timer_Tick(object sender, EventArgs e)
    {
        label1.Text = "";
    }

    private void button1_Click(object sender, EventArgs e)
    {
        string select = "select Input from tbl_Dta1";
        string connectionValue = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=TestDatabase.accdb";
        try
        {
            using (OleDbConnection nConnection = new OleDbConnection(connectionValue))
            {
                OleDbCommand cmd = new OleDbCommand(select, nConnection);
                nConnection.Open();
                dr = cmd.ExecuteReader();

                while (dr.Read())
                {
                    string update = dr.GetValue(0).ToString();
                    label1.Text = update;
                }

                dr.Close();
            }
        }
        catch(Exception ex)
        {
            MessageBox.Show("Failed to connect to Data source");
        }
    }
顺便说一句,我刚才编写的代码实际上是一个测试代码 我正在测试计时器是否会中断连接
这段代码当前内容的目的只是测试我得到的数据库单元格是否正确

所以你想根据对数据库的更改来更新标签吗?是的,这正是我想做的,也是我将来实际打算做的。(对不起,我没有编辑之前的评论)基本上,您不应该介意丢失连接,只要使用相同的连接字符串打开连接并获取所需的数据即可。然后直接从tick函数中更新它。同样地,创建一个包含我拥有的代码块的函数/方法,然后在tick函数中使用该方法,对吗?