国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

SQL Server編寫存儲過程小工具(二)

2024-08-31 00:48:38
字體:
來源:轉載
供稿:網友

sql server編寫存儲過程小工具
以下是兩個存儲過程的源程序
/*===========================================================

語法: sp_geninsert <table name>,<stored procedure name>
以northwind 數據庫為例
sp_geninsert 'employees', 'ins_employees'

注釋:如果您在master系統數據庫中創建該過程,那您就可以在您服務器上所有的數據庫中使用該過程。

=============================================================*/

create procedure sp_geninsert
@tablename varchar(130),
@procedurename varchar(130)
as
set nocount on

declare @maxcol int,
@tableid int

set @tableid = object_id(@tablename)

select @maxcol = max(colorder)
from syscolumns
where id = @tableid

select 'create procedure ' + rtrim(@procedurename) as type,0 as colorder into #tempproc
union
select convert(char(35),'@' + syscolumns.name)
+ rtrim(systypes.name)
+ case when rtrim(systypes.name) in ('binary','char','nchar','nvarchar','varbinary','varchar') then '(' + rtrim(convert(char(4),syscolumns.length)) + ')'
when rtrim(systypes.name) not in ('binary','char','nchar','nvarchar','varbinary','varchar') then ' '
end
+ case when colorder < @maxcol then ','
when colorder = @maxcol then ' '
end
as type,
colorder
from syscolumns
join systypes on syscolumns.xtype = systypes.xtype
where id = @tableid and systypes.name <> 'sysname'
union
select 'as',@maxcol + 1 as colorder
union
select 'insert into ' + @tablename,@maxcol + 2 as colorder
union
select '(',@maxcol + 3 as colorder
union
select syscolumns.name
+ case when colorder < @maxcol then ','
when colorder = @maxcol then ' '
end
as type,
colorder + @maxcol + 3 as colorder
from syscolumns
join systypes on syscolumns.xtype = systypes.xtype
where id = @tableid and systypes.name <> 'sysname'
union
select ')',(2 * @maxcol) + 4 as colorder
union
select 'values',(2 * @maxcol) + 5 as colorder
union
select '(',(2 * @maxcol) + 6 as colorder
union
select '@' + syscolumns.name
+ case when colorder < @maxcol then ','
when colorder = @maxcol then ' '
end
as type,
colorder + (2 * @maxcol + 6) as colorder
from syscolumns
join systypes on syscolumns.xtype = systypes.xtype
where id = @tableid and systypes.name <> 'sysname'
union
select ')',(3 * @maxcol) + 7 as colorder
order by colorder


select type from #tempproc order by colorder

drop table #tempproc

商業源碼熱門下載www.html.org.cn

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 孝昌县| 扶余县| 内江市| 鹤壁市| 白山市| 长海县| 全椒县| 中宁县| 莱芜市| 岳阳县| 巫山县| 迁西县| 泽普县| 新丰县| 乐安县| 达拉特旗| 凌海市| 饶平县| 乳山市| 赤城县| 新野县| 涞源县| 隆回县| 五家渠市| 进贤县| 工布江达县| 西乌珠穆沁旗| 灌阳县| 积石山| 清水河县| 阳春市| 尚义县| 饶阳县| 宝清县| 娱乐| 砚山县| 乌兰察布市| 阿拉善右旗| 邛崃市| 客服| 二连浩特市|