动态列重命名 [英] Dynamic Column Renaming

查看:58
本文介绍了动态列重命名的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果我们想在sql中重命名一个列,我们在我的存储过程中使用语句

Sp_rename'TableName.OldColumnName','NewColumnName','Column'

我想传递tableName,OldColumnName和NewColumnName

作为参数我的意思是动态声明

代码是:

创建程序A

@TableName nvarchar(255),

@OldColumnName nvarchar(255),

@NewColumnName nvarchar(255)



任何人都可以帮我写下带参数的声明

i不知道怎么把这个特殊字符'放在我的声明中

谢谢

if we want to rename a column in sql we use the statement
Sp_rename 'TableName.OldColumnName' , 'NewColumnName','Column'
in my stored procedure i want to pass tableName,OldColumnName and NewColumnName
as parameters i mean dynamic statement
the code is:
create Procedure A
@TableName nvarchar(255),
@OldColumnName nvarchar(255),
@NewColumnName nvarchar(255)

can any one help me to write the statement with the parameters
i dont know ho to put this special character ' in my statment
thanks

推荐答案

检查这个





check this


Create Procedure RenameColumnName
( 
@TableName nvarchar(255),
@OldColumnName nvarchar(255),
@NewColumnName nvarchar(255)
)
As
BEGIN
--declare @TableName nvarchar(255)='History',
--@OldColumnName nvarchar(255)='Column3',
--@NewColumnName nvarchar(255)='Column4'
declare @strsql varchar(max)
set @strsql = 'Sp_rename '''+@TableName+'.'+@OldColumnName+''' , '''+@NewColumnName+''',''Column''' 
exec (@strsql)

END


这篇关于动态列重命名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆