vb.net中 怎么用datast中一个表的某些字段数据替换另一个表的的字段数据

qq03sj04 2008-03-17 01:47:22
有两个sql表,
表结构:
a表: gh ff
001 10.00
003 12.00
b表:
gh ff_kk
001 ...
002 ...
003 ...
我现在要将表a的字段 ff 根据gh(因为这个字段的值是唯一的,没有重复)这个字段导入b表的ff_kk中
我现在将两个表都利用sqldataadapter 填充到了dataset中,
dim ds as new dataset
a表填充在 ds.tables(0)
b表添充在 ds.tables(1)
我怎么利用sqlcommand 进行数据替换呢?

...全文
200 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
beijing__2008 2008-05-06
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 lzmtw 的回复:]
看看DataTable.Merge方法
[/Quote]
qq03sj04 2008-05-06
  • 打赏
  • 举报
回复
Update b set kk=a.ff from A所在的库名.dbo.a a where b.gh=a.gh
这里在 "库名.dbo.a" 后面为什么还要写个a??
水如烟 2008-04-09
  • 打赏
  • 举报
回复
看看DataTable.Merge方法
xyken 2008-04-09
  • 打赏
  • 举报
回复
是把所有滿足b.gh=a.gh條件時字段kk的值替換成a.ff字段的值
qq03sj04 2008-03-17
  • 打赏
  • 举报
回复
Update b set kk=a.ff from A所在的库名.dbo.a a where b.gh=a.gh
这样一条语句是替换了一条记录,还是把所有的记录都替换了????
hc8112_boy 2008-03-17
  • 打赏
  • 举报
回复
1:A B同处在一台服务器不同库

Update b set kk=a.ff from A所在的库名.dbo.a a where b.gh=a.gh

2:A B不在同一台服务器上的两个数据库

Update b set kk=a.ff from opendatasource('sqloledb','server=..;database=..;user id=..;password=..;").库名.dbo.a a where b.gh=a.gh

----------------
3:两个Datatable之间除了循环Update之外可能有更好的办法,继续
gyc 2008-03-17
  • 打赏
  • 举报
回复
如果可以的话,可以用LINQ to DataSet 试试,
用这个,就是直接合并处理了

SQL语句基本只能用在数据库上, DataSet对搜索支持的很差

如果不能使用LINQ的话,就给手动实现合并了, 通过表A 和表B合成表C
当然,你可是直接从数据库中提取出来
qq03sj04 2008-03-17
  • 打赏
  • 举报
回复
因为我的两个表不是一个数据库中,那个连接语句应该是谁的连接语句呢?
xyken 2008-03-17
  • 打赏
  • 举报
回复
不知你是否是已知a表去填充b表,如果是那麼以下語句就可以做到啦
sqldataadapter.updatecommand=new sqlcommand("update b表 set ff_kk=a表.ff where a表.gh=b表.gh",sqlconnection(連接語句))
qq03sj04 2008-03-17
  • 打赏
  • 举报
回复
a表,b表在sql中有现成的表,但是不在同一个数据库,我现在就是想在vb.net中用代码利用a表依据gh对b表进行数据更新,我该怎么做呢?
marey_marey111 2008-03-17
  • 打赏
  • 举报
回复
如果原来的数据直接从数据库中直接取得话。。用一个存储过程来生成你想要的数据。
如果不是的话,使用dataset.select() 方法试试。。

16,721

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧