This topic has been archived. It cannot be replied.
-
工作学习 / IT技术讨论 / 请教:SQL Server 里的一个database, 用户要在每个table里加一相同的column要求这新加的column不能是table里的最后一项,必须在其中一column(let's say Column DESCRIPTION)下面。
一共有好几百table呢,现在新column是加进去了,可都在table的最后,sysclomns table里到是有colid,可不让update,实在不想手工改,各位有什么高见请赐教。
谢谢!
-zxcvb(朝天椒);
2004-1-19
{251}
(#1568444@0)
-
这种无理要求,可以不予理会。:)
-dundas888(登达寺);
2004-1-19
(#1568462@0)
-
BOSS要求, 能不理会吗?
-zxcvb(朝天椒);
2004-1-19
(#1568468@0)
-
给老板定制个view什么的片他
-expertune(伪劣);
2004-1-19
(#1568621@0)
-
小心你boss黑白复印钞票给你
-lord_of_ring(魔王转世);
2004-1-19
(#1568624@0)
-
那我就只填TIMESHEET不干活
-expertune(伪劣);
2004-1-19
(#1568637@0)
-
确是无理要求,如果没有很STRONG的理由,应考虑替代方案。
-handd(大熊猫®);
2004-1-20
(#1569675@0)
-
也不是什么难题,我可以做它。几分钟一张表,可以真正地更改顺序。当然还得看情况,表的索引多不多。
其实,他妈的,要求必须在什么后面,有病!要不然,估计是个小型的数据库.....................
-kyleliu(kyle);
2004-1-20
{157}
(#1569610@0)
-
If I were you, I would use Table object, Column object and InsertColumn mothod to do that stuff, only need your couple lines of code.
Or you can sub-contract me, :-))
-gugu(GuGu);
2004-1-20
(#1569788@0)
-
AS EASY AS 123. 跟用两个杯子倒腾牛奶一个道理,如下1. 将所有表用DTS导出, 导到哪那就有你决定了.
2. 将表定义的DDL文件另存一份并在上面修改, 在那个指定列后加入新列. 用编辑替代功能就是5秒钟的事.
3. 把表再导回来(DTS很聪明,它会按列名匹配把原来数据导入).
以上假设你有所有表DDL SCRIPT(没有好像有点不象话吧 DBA???) . 即使没有, 用generate sql script 功能逐一生成,或用ERWIN, RATIONAL, DESIGNER 等MODEL工具的reverse engineering功能一下搞定所有表.
-miniboat(够级队长);
2004-1-20
{388}
(#1569935@0)
-
谢谢楼上各位,我已经解决了这个问题, 具体做法见内Use the following statements to turn on 'allow updates':
use master
go
sp_configure 'allow updates', 1
go
reconfigure with override
go
这样我的syscolumns table 就可以update了。然后用一系列SQL statements生成另一系列sql satements --> RUN,run,run.
最后:
sp_configure 'allow updates', 0
go
reconfigure with override
go
复原
-zxcvb(朝天椒);
2004-1-20
{339}
(#1570239@0)