标题:更新table的问题
只看楼主
aklbryan
Rank: 2
等 级:论坛游民
帖 子:11
专家分:17
注 册:2011-11-28
结帖率:100%
已结贴  问题点数:20 回复次数:4 
更新table的问题
初次来论坛,有一个问题请教达人。

我是SQL初学者,有如下问题:

有一个table A, 里面有若干列(a1,a2,a3,a4,timestamp),a1是primary key

一个table B, 里面有若干列(a1,b2,b3,b4),此处a1和a.a1对应。b2对应a2,b3对应a3,b4对应a4

如何写语句实现更新了table A之后可以把更新也写入到table B中?此更新仅对有改动的记录。

如已存在的数据没改动则不做更新。

用一般SQL语句能达成还是用SP来写?此脚本不需要用trigger,即手动运行就可以。

谢谢!
搜索更多相关主题的帖子: 记录 primary 
2011-11-28 16:45
aklbryan
Rank: 2
等 级:论坛游民
帖 子:11
专家分:17
注 册:2011-11-28
得分:0 
我最主要的是不知道如何来比较两个table,用update语句来做的话是不是要写三次?!
2011-11-28 20:55
png
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:126
专家分:880
注 册:2010-10-6
得分:14 
需要指出的是表A,B的结构/功能要求违反相关数据库设计的关于更新异常的要求 - 相当于将房子建在沙滩上。
2011-11-28 22:52
aklbryan
Rank: 2
等 级:论坛游民
帖 子:11
专家分:17
注 册:2011-11-28
得分:0 
表a是数据库的一个主要表,保存了很多数据,有十几个column

表b是一个临时建立的表用来储存某些表a中的信息,只有几个column,它不是临时表,同时也不会和数据库里任何一个表有联系,仅仅是ID 和表A的ID相等而已。

我只是大概描述一下表a,b的结构。

应该不可用外键做,需要用stored procedure来做吧?!

请问大概的思路是什么呢?我接触SQL编程不久,过去也没编程的基础,望大家指导一下。谢谢
2011-11-29 00:03
png
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:126
专家分:880
注 册:2010-10-6
得分:0 
不是故意跟你过不去。如果话说得有些过,先给你道个歉。

前几天斑主推荐了本书 - SQL查询凡人入门。该书有段话说出了我一直想说的话,现贴给你参考。


将这段话引申 - 无论“...接触SQL编程久不久, 还是有没有编程的基础...”只要能在纸上画出表A,B的结构,并能手动添入合理的数据,就应当清楚你想要的结果和逻辑思路。

回答为什么要作同回答怎么作一样要紧。另外关于“更新异常”推荐你看一下。

2011-11-30 02:58



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-356422-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.218243 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved