不使用DataAdapter.Fill更新数据表2次

时间:2013-12-16 15:23:39

标签: c# mysql data-access-layer

我正在编写一个管理办公室的程序。 (摆脱Excels XD)。

我有一个包含以下变量的DAL类:

    private MySqlConnection connection;
    private DataSet ds;
    private Hashtable adapters;

有这种方法:

    public bool AddTable(string tableName, string sqlStat)
    {
        if (!ds.Tables.Contains(tableName))
        {
            MySqlDataAdapter adapter = new MySqlDataAdapter(sqlStat, connection);
            MySqlCommandBuilder builder = new MySqlCommandBuilder(adapter);
            adapter.InsertCommand = builder.GetInsertCommand();
            adapter.UpdateCommand = builder.GetUpdateCommand();
            adapter.DeleteCommand = builder.GetDeleteCommand();
            adapter.Fill(ds, tableName);
            adapters.Add(tableName, adapter);
            return true;
        }
        return false;
    }

该程序将连接到具有MySQL数据库的服务器。 我需要确保当一个客户端更改数据库中的某些内容时,另一个客户端将看到新数据,但这不会发生。

1 个答案:

答案 0 :(得分:0)

您需要阅读乐观并发,这有助于解决多个用户同时读取和更新相同数据的问题。

我建议你从这里开始: