C# 稍后/手动将更改应用于数据库

C# 稍后/手动将更改应用于数据库,c#,oracle,compact-framework,sql-server-ce,C#,Oracle,Compact Framework,Sql Server Ce,有可能做到这一点吗 从数据库下载/获取数据,然后本地保存到Windows Mobile应用程序以供以后使用(无需internet连接) 在本地对数据库进行更改 上载本地数据库的更改以手动从服务器更新数据库 我正在考虑使用同步功能,但我在服务器上使用Oracle数据库,Oracle DB和SQL server Compact不支持自然地相互同步。当然这是完全可能的,但不幸的是,您需要自己编写同步功能。您可能可以合并,但到目前为止还没有适合您的栓接解决方案,因此您需要添加同步功能 快乐编码 请阅读A

有可能做到这一点吗

  • 从数据库下载/获取数据,然后本地保存到Windows Mobile应用程序以供以后使用(无需internet连接)

  • 在本地对数据库进行更改

  • 上载本地数据库的更改以手动从服务器更新数据库

  • 我正在考虑使用同步功能,但我在服务器上使用Oracle数据库,Oracle DB和SQL server Compact不支持自然地相互同步。

    当然这是完全可能的,但不幸的是,您需要自己编写同步功能。您可能可以合并,但到目前为止还没有适合您的栓接解决方案,因此您需要添加同步功能


    快乐编码

    请阅读ADO.NET技术。
    它是为实现您的场景而设计的—维护断开连接的服务器数据缓存

    比如看


    这里有一个更具体的例子->

    这是一个微软关于如何做到这一点的精彩演练:

    请注意,据报道,该技术并非100%可靠,这意味着它可能“忘记”发布最新数据


    要解决这个问题,您可以在每个存储最新数据写入或更新时间的表中添加一个
    TimeStamp
    字段,然后修改查询以仅拉/推最新记录。

    似乎您必须自己编写一个同步桥接器来完成此任务。只是一个想法,我遇到了一个类似的要求,我最终实现了一个文件系统监视程序,它在FTP服务器中保存文件,以处理移动设备下载和上传的数据库(作为CSV)。所以这确实是可能的,但您需要在服务器和客户端上创建自己的处理程序。我想知道为什么会投反对票。当有人试图在没有解释原因的情况下否决某个问题时,我总是感到沮丧|您的意思是我必须手动比较本地数据和服务器上数据之间的更改吗?谢谢。虽然我已经掌握了连接、命令、数据适配器和数据集方面的知识,事实上,我正在寻找一种解决方案/建议,用于以下场景:我必须在本地将数据下载到移动设备,然后在断开连接的模式下将更改上载到DB.ADO.NET。这正是您想要的:)我遇到了SQLBulkCopy操作。我想这可能会让我更接近我想要实现的目标。你认为这个方法:1。从服务器下载数据,然后保存到应用程序2上的本地数据库。更改本地数据库数据3。在应用程序中完成用户操作后,使用SQLBulkCopy将数据从本地数据库通过数据集上传到服务器。问题是我的服务器是Oracle。我不确定是否有类似SQLBulkCopy for CF到Oracle DB的东西。