SQL Server 批量转换指定字段类型为另一种类型

来源:互联网 发布:mysql备份数据库 编辑:程序博客网 时间:2024/05/17 19:57

SQL Server 批量转换指定字段类型为另一种类型存储过程:

CREATE PROCEDURE convertFieldType ASDECLARE tb CURSOR FOR SELECTSQL = 'alter   table   [' + d.name + '] alter  column [' + a.name + '] 目标类型'FROMsyscolumns aLEFT JOIN systypes b ON a.xtype = b.xusertypeINNER JOIN sysobjects d ON a.id = d.idAND d.xtype = 'U'AND d.name <> 'dtproperties'WHEREb.name IN ('原类型')AND NOT EXISTS (SELECT1FROMsysobjectsWHERExtype = 'PK'AND name IN (SELECTnameFROMsysindexesWHEREindid IN (SELECTindidFROMsysindexkeysWHEREid = a.idAND colid = a.colid)))   ORDER BYd.name,a.nameDECLARE @SQL VARCHAR (1000) OPEN tb FETCH NEXTFROMtb INTO @SQLWHILE @@fetch_status = 0BEGINEXEC (@SQL) FETCH NEXTFROMtb INTO @SQLEND CLOSE tb DEALLOCATE tb


原创粉丝点击