我想写一个存储过程.用来update某个表,把里面的RecId这列的前缀都改变,表是作为参数传入存储过程.原前缀,新前缀都是作为参数传进来例如:
RecId
aa00001
aa00002
aa00003全部改为
bb00001
bb00002
bb00003ALTER PROCEDURE [dbo].[ModifySeq]
@ProTableName varchar(20),
@NewPrefix varchar(5),
@Prefix varchar(5),
ASbegin
exec ('UPDATE '+ @ProTableName + 'set RecId=REPLACE('+@ProTableName+'.RecId '+','+ @Prefix+','+@NewPrefix+')')
END
RecId
aa00001
aa00002
aa00003全部改为
bb00001
bb00002
bb00003ALTER PROCEDURE [dbo].[ModifySeq]
@ProTableName varchar(20),
@NewPrefix varchar(5),
@Prefix varchar(5),
ASbegin
exec ('UPDATE '+ @ProTableName + 'set RecId=REPLACE('+@ProTableName+'.RecId '+','+ @Prefix+','+@NewPrefix+')')
END
解决方案 »
- tomcat中报错显示“列名"ent ID"无效”
- 菜鸟提问:各位见笑了!仰慕高手们的招,学几招
- 求一条insert 语句
- 数据横排的问题.苦思不得其解
- 当内容是date时,日期范围可 between '1980/1/1' and '2050/1/1',就基本囊括所有日期;但是nvarchar时,如何能囊括所有内容?即between an
- 可以关闭日记记录功能吗?
- 救命啊!
- 本人太菜解决不了,求正解呀。例如一个表有id a1 a2 a3 a4 cmdid~~~~~~~~~
- 设置缺省值
- 帮我优化一下这个存储过程
- sql注册程序集(无法安装程序集***,因为现有策略阻止使用它。)
- ★100分★如何在一个有很多字段的表中查出所有字段完全相同的记录
@ProTableName varchar(20),
@NewPrefix varchar(5),
@Prefix varchar(5)
ASbegin exec ('UPDATE '+ @ProTableName + ' set RecId=REPLACE('+@ProTableName+'.RecId '+','''+ @Prefix+''','''+@NewPrefix+''')')
END
IF EXISTS (SELECT 1 FROM SYSOBJECTS WHERE name = 'ModifySeq')
BEGIN
DROP PROC ModifySeq
END
GO
CREATE PROCEDURE [dbo].[ModifySeq]
@ProTableName varchar(20),
@NewPrefix varchar(5),
@Prefix varchar(5)
ASbegin
EXEC ('UPDATE '+ @ProTableName + ' set RecId=REPLACE('+@ProTableName+'.RecId '+','+ '''' + @Prefix+ '''' + ','+ '''' + @NewPrefix + '''' +')')
ENDGO
消息 102,级别 15,状态 1,第 1 行
'RecId' 附近有语法错误。