如何在ce中创建空数据库并用datagridview显示

本文关键字:数据库 datagridview 显示 创建 ce | 更新日期: 2023-09-27 18:29:04

所以,我的代码

if (System.IO.File.Exists(fileName))
        {
            System.IO.File.Delete(fileName);
        }
        SqlCeEngine en = new SqlCeEngine(connectionString);
        en.CreateDatabase();
        SqlCeConnection cn = new SqlCeConnection(connectionString);
        if (cn.State == ConnectionState.Closed)
            cn.Open();
        string sql = "create table EnergyMain(id int not null, date datetime not null, totalamount float)";
        SqlCeCommand cmd = new SqlCeCommand(sql, cn);
        cmd.ExecuteNonQuery();
        SqlCeCommand tbltodgv = new SqlCeCommand("EnergyMain", cn);
        tbltodgv.CommandType = CommandType.TableDirect;
        SqlCeResultSet rs = tbltodgv.ExecuteResultSet(ResultSetOptions.Scrollable | ResultSetOptions.Updatable);
        dgvMain.DataSource = rs;
        cn.Close();

这段代码创建了一个带有一个空表的简单null数据库。当我按下窗体上的按钮时,它会创建它。但当我第二次按下它时,它写入错误

Invalid attempt to call method Updatable when SqlResultSet is closed.

我如何创建数据库的次数可以达到我想要的

如何在ce中创建空数据库并用datagridview显示

当您将数据网格视图绑定到结果集时,不要关闭底层连接,因此删除cn.close()