【问题标题】:Why does my DataAdapter "Fill" only second time around? SQL Server Compact为什么我的 DataAdapter 仅第二次“填充”? SQL Server 紧凑型
【发布时间】:2011-09-21 00:51:23
【问题描述】:

一些背景: 我正在尝试使用 Sync Services for ADO.NET 为我的应用程序创建服务器/客户端同步方案,特别是 LocalCache 自定义工具,它为我设置了整个事情。 我的服务器数据库有 5 个表,所有这些表都正在同步到客户端应用程序,客户端应用程序现在有一个与服务器数据库具有相同架构的 SQL Server Compact DB。我有一个包含一些自定义查询的数据集,用于将我的应用程序与本地数据库连接起来。 到目前为止,一切都很好。 但是,在我的应用程序中,当我尝试使用表单上的表格适配器(默认的“填充”方法)填充其中一个表格时,它给了我以下异常:

不存在从 DbType 对象到已知 SqlDbType 的映射。

但是,如果我继续并再次进行填充,它可以正常工作。

    Try
        Me.WTSUsersTableAdapter.Fill(Me.WTSMainDataSet.WTSUsers)
    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try

如果我两次执行上述代码,一个接一个,第一个失败,第二个有效。

另外一点要提的是,这只发生在这个数据表上,数据库中的所有其他 4 个表都按预期工作。

有人知道这可能是什么原因吗?

非常感谢

编辑:我删除了我的数据集并重新创建了它,但没有成功。有人对我有想法吗?

【问题讨论】:

  • 如果我有任何声望,我会提供赏金......

标签: vb.net sql-server-ce dataadapter


【解决方案1】:

我找到了我的问题的答案。我为表适配器输入的自定义“更新”查询存在问题。出于某种原因,这阻止了表格适配器执行简单的“填充”,但仅在第一次尝试时。在第二次尝试时,它似乎并不关心我的更新错误......

上图。

我发现问题的方法是从适配器中删除每个自定义查询,然后一次添加一个以查看导致错误的原因。

【讨论】:

    猜你喜欢
    • 2015-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-31
    • 2014-08-08
    • 1970-01-01
    相关资源
    最近更新 更多