我将 DataSet 连接到 SQL CE 3.5 数据库并追踪异常 (nullref)。我认为这个问题可能是由一个空的 DataSet 引起的,但我很难理解 DataTable 结构的工作方式。
如果我针对仅存在结构且未添加记录的表填充 DataSet,那么标准行为是什么?是匹配结构的 DataTable 实例化还是 DataSet 为空?(假设这个数据库只包含我在这种情况下连接到的一个表)。
编辑:便宜的例子
数据库“联系人”只有 1 个表“MyContacts”。它有四个字段,ContactID、Name、Phone、Email (int, nvarchar x3)
DataSet data = new DataSet()
SqlCeConnection connection = new SqlCeConnection();
SqlCeDataAdapter adapter = new SqlCeDataAdapter("SELECT * FROM MyContacts ", connection);
SqlCeCommandBuilder builder = new SqlCeCommandBuilder(adapter);
adapter.Fill(data, MyContacts);
return data;
如果表存在(其结构存在)但没有记录,会发生什么?