注册 登录
编程论坛 SQL Server论坛

这个SQL语句该如何写

guiqian145 发布于 2007-12-30 10:27, 2352 次点击
[bold]我想修改身份证号码,因为数据库中有很多表中有该字段,所以我想问:::

我该怎样写SQL语句能够 一次性把数据库中有 身份证号码 字段的表的身份证号码修改掉!!
谢谢!!![/bold]
11 回复
#2
guiqian1452007-12-31 08:37
顶顶顶顶顶..........................................!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
#3
Kettyjin19832007-12-31 10:26
个人感觉应该没办法写一次SQL就可以的吧,应该要写存储过程吧,等高手吧。
#4
turbo2802008-01-03 19:51
我感觉也是,一次性修改掉那是没办法吧。。也许高手行
#5
Kendy1234562008-01-03 20:51
我认为理论上是没办法的。

如果用存储过程,可以使用游标查找系统表  找出每张含有身份证字段的表的名字,然后拼写SQL语句update掉身份证号码。 但是 这只是自动拼写update语句而已,并不是楼主说想的一次性的把所有的表都update掉了,实质上还是用循环的方式一张表一张表去修改的。

其实我觉得这个问题意义不大,就算用手一条一条的写update语句 也很快就完成了
#6
dingpin2008-01-03 20:59
一个一个表的update吧,我认为...
只不过是改一个表名而已
期待高手......
#7
tillere0072008-01-04 10:28
有难度,关注!
#8
西风独自凉2008-01-04 10:49
除了一個個修改,應該沒有別的辦法
循環或許是最好的辦法
#9
bygg2008-01-04 11:49
设计上的错误。。。。
#10
wyg48592008-01-04 14:29
貌似
for(){
    $sql = "UPDATE AA a,BB b,CC c SET a.id = b.id = c.id = 123423 WHERE a.id = 43243";
}
不知道行不行
#11
jxzyh12008-01-18 15:03
可以使用触发器实现
#12
provoke2008-01-20 15:11
用触发器可以实现,不过最好的办法还是:
设置外键,级联更新,这样更新时只需更新主键表,所有参照该主键表的外键都将自动更新。
看来楼主好像是没学过数据库的。
1