一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數(shù)據(jù)庫技術|

服務器之家 - 數(shù)據(jù)庫 - Sql Server - sqlserver對字段的添加修改刪除、以及字段的說明

sqlserver對字段的添加修改刪除、以及字段的說明

2019-12-12 15:21MSSQL教程網(wǎng) Sql Server

sqlserver對字段的添加修改刪除、以及字段的說明,需要的朋友可以參考下。

代碼如下:


--新增表字段 
ALTER procedure [dbo].[sp_Web_TableFiled_Insert] 

@TableName varchar(100), 
@FieldName varchar(100), 
@FieldExplain varchar(200), 
@DataType varchar(100), 
@ConnectTableName varchar(100), 
@FieldLength int, 
@NewsID int output 

as 
begin transaction mytran 
declare @errorSum int 
if not exists (SELECT * FROM syscolumns where id=object_id(@TableName) AND name=@FieldName) 
begin 
insert tb_TableField 

TableName, 
FieldName, 
FieldExplain, 
DataType, 
ConnectTableName, 
FieldLength, 
UserSetSign 

values 

@TableName, 
@FieldName, 
@FieldExplain, 
@DataType, 
@ConnectTableName, 
@FieldLength, 
'1' 

declare @sql varchar(8000) 
--判斷類型 
if(@DataType='decimal') 
begin 
set @sql = 'alter table ' + @TableName +' add ' + @FieldName +' ' + @DataType +'(' +Convert(varchar,@FieldLength)+',2'+')' 
end 
else if(@DataType='varchar') 
begin 
set @sql = 'alter table ' + @TableName +' add ' + @FieldName +' ' + @DataType +'(' +Convert(varchar,@FieldLength)+')' 
end 
else 
begin 
set @sql = 'alter table ' + @TableName +' add ' + @FieldName +' ' + @DataType 
end 
exec(@sql) 
EXECUTE sp_addextendedproperty N'MS_Description', @FieldExplain, N'user', N'dbo', N'Table', @TableName, N'column' , @FieldName; 
set @errorSum=@errorSum+@@error 
set @NewsID=0; 
end 
else 
begin 
set @NewsID=1; 
end 
if(@errorSum>0) 
begin 
rollback tran 
end 
else 
begin 
commit tran mytran 
end 
--修改表字段 
ALTER procedure [dbo].[sp_Web_TableFiled_Update] 

@TableName varchar(100), 
@FieldName varchar(100), 
@FieldExplain varchar(200), 
@DataType varchar(100), 
@ConnectTableName varchar(100), 
@FieldLength int, 
@ID int, 
@NewsID int output 

as 
begin transaction mytran 
declare @fname varchar(100) 
declare @errorSum int 
--先取出表中以前的字段名稱 
select @fname=FieldName from tb_TableField where ID=@ID 
declare @pstid int 
declare @sql varchar(8000) 
--再根據(jù)字段名稱取出tb_PaySystemToLocation中對應的ID 
select @pstid=ID from tb_PaySystemToLocation where LocationField=@fname 
set @sql = 'sp_rename '+CHAR(39)+@TableName+'.['+@fname+']'+CHAR(39)+',' +char(39)+@FieldName+char(39)+',' + char(39)+'COLUMN' +CHAR(39) 
exec(@sql) 
update tb_TableField 
set TableName=@TableName, 
FieldName=@FieldName, 
FieldExplain=@FieldExplain, 
DataType=@DataType, 
ConnectTableName=@ConnectTableName, 
FieldLength=@FieldLength 
where ID=@ID 
--修改字段說明 
EXECUTE sp_updateextendedproperty N'MS_Description', @FieldExplain, N'user', N'dbo', N'Table', @TableName, N'column' , @FieldName; 
--EXEC sp_updateextendedproperty 'MS_Description',@FieldExplain,'user',dbo,'table',@TableName,'column',@FieldName 
set @NewsID=0; 
set @errorSum=@errorSum+@@error 
if(@@ERROR>0) 
begin 
rollback tran 
end 
else 
begin 
commit tran mytran 
end 
-刪除表字段 
ALTER procedure [dbo].[sp_Web_TableFiled_Delete] 

@ID int, 
@NewsID int output 

as 
begin transaction mytran 
declare @fname varchar(100) 
declare @tablename varchar(100) 
declare @pstid int 
declare @sql varchar(8000) 
declare @errorSum int 
--取出字段名,表名 
select @fname=FieldName,@tablename=TableName from tb_TableField where ID=@ID 
--取出tb_PaySystemToLocation的ID 
select @pstid=ID from tb_PaySystemToLocation where LocationField=@fname 
delete from tb_TableField where ID=@ID 
set @sql='ALTER TABLE ' +@tablename+ ' DROP COLUMN '+ @fname 
exec(@sql) 
set @errorSum=@errorSum+@@error 
set @NewsID=0; 
if(@errorSum>0) 
begin 
rollback tran 
end 
else 
begin 
commit tran mytran 
end 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美成狂野欧美在线观看 | 国产亚洲玖玖玖在线观看 | 无人区尖叫之夜美女姐姐视频 | 好大好硬好深好爽想要之黄蓉 | 1024人成网站色 | 日本中文字幕一区二区高清在线 | 京东热在线观看 | 日本一区二区三区久久 | 亚洲精品91 | 亚洲精品综合一区二区 | 日本中文字幕永久在线 | 好大好长好紧爽免费 | 亚洲国产欧美目韩成人综合 | 性做久久久久久久久浪潮 | 精品一成人岛国片在线观看 | 色就色欧美综合偷拍区a | 歪歪私人影院成人毛片 | 糖心vlog麻豆精东影业传媒 | 国产午夜亚洲精品一区网站 | 亚洲精品午夜级久久久久 | 给我免费观看的视频在线播放 | 国产精品高清一区二区三区不卡 | 天天插综合网 | 国产午夜精品久久久久小说 | 日本理论片中文在线观看2828 | 福利三区 | 奇米狠狠色 | 99久久国语露脸精品国产 | 手机在线免费观看日本推理片 | 日本一在线中文字幕天堂 | 翁息肉小说老扒 | 成人网欧美亚洲影视图片 | 欧美性高清另类videosex死尸 | 色综合天天综合中文网 | 日本草草视频在线观看 | 大陆男同志gayxxx | 秋霞黄色大片 | 国产精品久久久久久久牛牛 | 天天爽天天操 | 麻豆小视频在线观看 | 成人欧美一区在线视频在线观看 |