修改用户定义的数据类型-数据库-编程文档-人才家园--中国人才库
您所在的位置:中国人才库--人才家园--编程文档--数据库
修改用户定义的数据类型
来源: 编辑:duliying 更新日期:2008-9-20 11:20:04 浏览:248 次
--SQLSERVER的自定义类型比较好用吧,但是,一旦引用该数据类型后,想修改数据类型,就是一大头疼的事了,本存储过程就是专门对付它的。 --sp_rebuildallview 见本BLOG中的其它页面
create procedure sp_rechangfieldtype(@typename varchar(50), @newtype varchar(50))
as
begin declare @typeid int
declare @tablename varchar(50)
declare @column varchar(50) declare @sqlstr varchar(200)
declare @defaultid int
select @typeid = xusertype
 from systypes
  where name = @typename and xusertype > 256
  AND (is_member(‘db_owner‘) = 1 OR is_member(‘db_ddladmin‘) = 1 OR is_member(user_name(uid))=1) declare mycursor cursor for
select o.name, c.name, c.cdefault
from syscolumns c, systypes t, sysusers u, sysobjects o
where c.xusertype = @typeid
 and t.xusertype = @typeid
 and o.uid = u.uid
 and c.id = o.id
  and o.type = ‘u‘ open mycursor
fetch next from mycursor into @tablename, @column, @defaultid
while @@fetch_status = 0
begin
  if @defaultid <> 0
  begin
    set @sqlstr = ‘alter table ‘ + @tablename + ‘ drop ‘ + object_name(@defaultid)
    exec(@sqlstr)     set @sqlstr = ‘alter table ‘ + @tablename + ‘ alter column ‘ + @column + ‘ ‘ + @newtype
&
 第1页/总3页  第一页 上一页 下一页 最后一页     【发表评论】
昵   称:  (不填写则显示为匿名)
标   题:
内   容:
 
免责声明:网友对此资源信息的评论仅代表个人观点,中国人才库有权删除违乱评论信息!
石家庄广通印刷学校