![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
access如何修改多个数据库中的同一内容 150
我有N个access的.mdb数据库,现在需要修改同一位置同一个数据,变为不同数据,怎么修改?例如:1.mdb中:ID字段1字段21aabb2ccdd.........2...
我有N个access的.mdb数据库,现在需要修改同一位置同一个数据,变为不同数据,怎么修改?
例如:
1.mdb中:
ID 字段1 字段2
1 aa bb
2 cc dd
... ... ...
2.mdb中:
ID 字段1 字段2
1 AA BB
2 cc DD
... ... ...
把相同位置相同内容的“cc”快速换成“c1”、“r1”,有什么办法?能用别的软件弄也可以。
数据库很多,不想一个个打开来改,要不就不会到这问了。
是多个.mdb数据库文件~~同一位置的内容是否相同是不需要判断的,因为确实相同。
cc换成什么无规律,需手动换。
具体的数据我觉得就不必的吧,这不是我想展示就展示的。
希望各位路过的大侠都帮帮忙~ 展开
例如:
1.mdb中:
ID 字段1 字段2
1 aa bb
2 cc dd
... ... ...
2.mdb中:
ID 字段1 字段2
1 AA BB
2 cc DD
... ... ...
把相同位置相同内容的“cc”快速换成“c1”、“r1”,有什么办法?能用别的软件弄也可以。
数据库很多,不想一个个打开来改,要不就不会到这问了。
是多个.mdb数据库文件~~同一位置的内容是否相同是不需要判断的,因为确实相同。
cc换成什么无规律,需手动换。
具体的数据我觉得就不必的吧,这不是我想展示就展示的。
希望各位路过的大侠都帮帮忙~ 展开
3个回答
展开全部
看你是想要怎么替换了,如果各文件需要替换为不同的数据,只能用方法一实现;如果都替换成相同数据,可以考虑用方法二实现:
一、如果你需要手工更新,只不过懒得切换操作界面的话,可以考虑用SQL SERVER的查询分析器来挂接,方法如下:
-- 添加数据库链接
EXEC sp_addlinkedserver
@server = 'kd',
@provider = 'Microsoft.Jet.OLEDB.4.0',
@srvproduct = 'OLE DB Provider for Jet',
@datasrc = 'D:\1.mdb'
GO
-- 用户登录
EXEC sp_addlinkedsrvlogin 'mdb1', 'false', 'sa', 'Admin', NULL
GO
-- 查询数据,假设table1为查询表名
select * from mdb1...table1
-- 更新数据
update mdb1...table1 set 字段1='c1' where 字段1='cc'
-- 用户注销
EXEC sp_droplinkedsrvlogin 'mdb1', NULL
GO
-- 断开数据库链接
EXEC sp_dropserver 'mdb1', 'droplogins'
GO
修改个别参数,直接执行语句即可。
如果需要更新下一个数据库比如2.mdb,直接用查找/替换把1.mdb全部替换为2.mdb,然后再执行一下即可,比较方便。
二、专门编写一个软件来实现此效果。编写思路大概如下:
1.把所有mdb文件放到同一文件夹下,在软件中读取此路径。
2.遍历路径下所有mdb文件,进行处理。
3.在处理过程中实现ADO连接,并对指定条件的表中字段进行更新。
4.处理完毕。
专门编写软件来实现的话,颇有杀鸡用牛刀的感觉,当然也有针对性强、参数灵活的优点。如果你工作中需要经常处理此类问题的话,考虑用软件编写才比较适合;如果这只是个偶发性的问题的话,方法一已经足够了。
一、如果你需要手工更新,只不过懒得切换操作界面的话,可以考虑用SQL SERVER的查询分析器来挂接,方法如下:
-- 添加数据库链接
EXEC sp_addlinkedserver
@server = 'kd',
@provider = 'Microsoft.Jet.OLEDB.4.0',
@srvproduct = 'OLE DB Provider for Jet',
@datasrc = 'D:\1.mdb'
GO
-- 用户登录
EXEC sp_addlinkedsrvlogin 'mdb1', 'false', 'sa', 'Admin', NULL
GO
-- 查询数据,假设table1为查询表名
select * from mdb1...table1
-- 更新数据
update mdb1...table1 set 字段1='c1' where 字段1='cc'
-- 用户注销
EXEC sp_droplinkedsrvlogin 'mdb1', NULL
GO
-- 断开数据库链接
EXEC sp_dropserver 'mdb1', 'droplogins'
GO
修改个别参数,直接执行语句即可。
如果需要更新下一个数据库比如2.mdb,直接用查找/替换把1.mdb全部替换为2.mdb,然后再执行一下即可,比较方便。
二、专门编写一个软件来实现此效果。编写思路大概如下:
1.把所有mdb文件放到同一文件夹下,在软件中读取此路径。
2.遍历路径下所有mdb文件,进行处理。
3.在处理过程中实现ADO连接,并对指定条件的表中字段进行更新。
4.处理完毕。
专门编写软件来实现的话,颇有杀鸡用牛刀的感觉,当然也有针对性强、参数灵活的优点。如果你工作中需要经常处理此类问题的话,考虑用软件编写才比较适合;如果这只是个偶发性的问题的话,方法一已经足够了。
![](https://ecmc.bdimg.com/public03/b4cb859ca634443212c22993b0c87088.png)
2024-09-02 广告
Play Video 七鑫易维是致力于机器视觉和人工智能领域的高新科技企业,迄今已专注眼球追踪技术的研发、创新与应用超过14年,拥有完全自主知识产权,全球专利总量655余项。 作为眼球追踪技术领域的全球知名品牌,七鑫易维的产品体系覆盖眼动分...
点击进入详情页
本回答由七鑫易维信息技术提供
展开全部
不知道你说的什么意思,是同一个数据库中的多个表,还是其它什么?在一个MDB中有多个表……
是不是需要判断同一位置的内容是否相同,把哪个CC换成C1,哪个CC换成R1,等这些有什么要求,我想只有把你真实的数据库拿出来才能说清楚的
是不是需要判断同一位置的内容是否相同,把哪个CC换成C1,哪个CC换成R1,等这些有什么要求,我想只有把你真实的数据库拿出来才能说清楚的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
update (select a.字段1 as 1,b.字段1 as 2 from 表1 as a , 表2 as b where a.字段1=b.字段1) a set a.1=* and a.2=*
不知道行不行
不知道行不行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询