在Firebird数据库中读取或更新表失败

时间:2014-10-14 04:14:58

标签: c# firebird

我创建了一个firebird名称 emp 的表格,我正在尝试使用 FbDataAdapter 将该表格中的所有数据转换为c#中的数据表。

但是在那个数据表中我只得到列名。我没有得到这些价值观。该表有3行。

DataTable dt = new DataTable();
FbDataAdapter adapter1 = new FbDataAdapter("select * from emp", con);
adapter1.Fill(dt);

用于从firebird中的emp表中读取数据的代码。但是在那张表中我有这些价值观:

enter image description here

但是在 dt 中它只显示那些列名:( :(为什么它的表现如此...... !!

然后我通过以下命令

将一些值插入到同一个数据库表中
FbCommand cmd = new FbCommand("INSERT INTO emp VALUES ('11','X')", con);
int ds =cmd.ExecuteNonQuery();

然后当我再次在 dt 中看到它时,它只显示通过上述SQL查询插入的值。

1 个答案:

答案 0 :(得分:0)

所有操作都在事务中完成,仅当事务已提交时,更改才会成为永久性且对其他事务可见。在您的ISQL屏幕截图中,您已插入项目,并在同一交易中选择 。但是,您尚未提交这些更改。这意味着1)它们对其他事务不可见,2)当你在没有提交的情况下退出isql时它们被“删除”。

在isql中插入项目后,您需要执行commit,以便提交行并使其对其他事务(如C#应用程序中的事务)可见。