我有两个Access 2003数据库(fooDb和barDb). fooDb中有四个表链接到barDb中的表.两个问题:如何更新表格内容(fooDb中的链接表应与barDb中的表格内容同步)如何使用ADO.NET将表重新链接到不同的barDb我用谷歌搜索,...
我有两个Access 2003数据库(fooDb和barDb). fooDb中有四个表链接到barDb中的表.
两个问题:
>如何更新表格内容(fooDb中的链接表应与barDb中的表格内容同步)
>如何使用ADO.NET将表重新链接到不同的barDb
我用谷歌搜索,但没有得到任何有用的结果.我发现如何在VB(6)和DAO中实现这一点,但我需要一个C#的解决方案.
解决方法:
如果您使用C#进行编码,则不涉及Access,仅涉及Jet.因此,您可以使用任何您想要访问数据的方法,然后对更新进行编码.
我在Access中多次编写了这种东西,我对每个表的方法是:
>运行从barDB中不再存在的fooDB中删除的查询.
>运行一个查询,该查询插入barDB中fooDB中尚不存在的fooDB记录中.
>我总是使用编写即时SQL的代码来使用barDB中的数据更新fooDB表.
第三个是艰难的.我遍历DBA中的fields集合并在运行中编写SQL,如下所示:
UPDATE table2 INNER JOIN table1 ON table2.ID = table1.ID
SET table2.field1=table1.field1
WHERE (table2.field1 & "") <> (table1.field1 & "")
对于数字字段,您必须使用可用的SQL方言函数将Null转换为零.运行Jet SQL,我当然使用Nz(),但这不能通过ODBC工作.但不确定它是否适用于OLEDB.
无论如何,重点是发出一堆逐列的SQL更新,而不是逐行尝试,这样效率会低得多.
本文标题为:以编程方式使用C#更新MS Access数据库中的链接表
- C#折线图控件使用方法详解 2023-05-22
- Unity实现跑马灯抽奖效果 2023-01-11
- Unity向量按照某一点进行旋转 2023-02-07
- Unity实现游戏伤害数字显示HUD的方法 2023-05-06
- C#使用Aforge调用摄像头拍照的方法 2022-12-31
- C#和vb.net实现PDF 添加可视化和不可见数字签名 2023-04-27
- C#设计模式之建造者模式 2023-06-21
- C#公众号开发之给用户发红包 2022-12-30
- Unity时间戳的使用方法 2023-02-17
- 用Linq从一个集合选取几列得到一个新的集合(可改列名) 2023-02-03