sql 使用存储过程传递列名或表名作为参数

原网址:

http://www.cnblogs.com/85538649/archive/2011/09/23/2186155.html

alter procedure Proc_UpdateDatetimeCounter
@businessNum nvarchar(200),--业务号
@column nvarchar(200),--列名
@value datetime--值
as
declare @sql nvarchar(max)
set @sql = N‘update counter set ‘+quotename(@column)+‘= @value1 where businessNum = @businessNum1‘
exec sp_executesql @sql,
N‘@value1 as datetime,@businessNum1 as nvarchar(200)‘,
@value1 = @value,
@businessNum1 = @businessNum

时间: 2024-07-31 21:19:30

sql 使用存储过程传递列名或表名作为参数的相关文章

动态游标(例如表名作为参数)以及动态SQL分析

表名作为参数的动态游标 DECLARE v_table_name VARCHAR2(30) := 'CUX_MES_WIP_BARCODE_MAP'; --l_rec SYS_REFCURSOR; TYPE t_data IS TABLE OF VARCHAR2(30) INDEX BY BINARY_INTEGER; TYPE t_cur IS REF CURSOR; l_data t_data; l_rec t_cur; l_cur VARCHAR2(4000); v_fm_barcode

完整SQL分页存储过程(支持多表联接)

http://www.cnblogs.com/andiki/archive/2009/03/24/1420289.html Code/********************************************************* * 作 用:数据分页(完整SQL分页存储过程(支持多表联接))* 作 者:齐李平* 创建日期:2009-03-23* 使用说明: 1.单表调用方法:EXEC proc_DataPagination @tblName = 'ipa',@fldName

SQL查找存储过程,列名,表,方法,字符串中匹配的字符串

--select string using in procedure select b.name, a.text from syscomments a left join sysobjects b on b.id=a.id where b.xtype='P' and a.text like '%USP_FOUNDATIONUPDATE%' --select columns name select b.name as Table1, a.name as Columns1,a.type from s

Mysql中表名作为参数的问题

近期由于程序的异常,导致数据库中创建了大量的表(约4000个),纠结的是表中的数据还都是有用的. 需要合并到一个表中,首先想到的就是使用存储过程来处理,但由于表名都是动态生成的,需要解决在存储过程中处理以表名作为参数的问题. 1.用set或者declare语句将表名定义为变量,在sql中的表名位置使用变量,经验证行不通,数据库会把变量名当作表名. 2.要进行的操作直接用concat拼接出来,然后直接执行这个sql.可如何在存储过程中执行拼接的sql,经查找可使用PREPARE 来完成. 下面是示

sql server快速删除整个数据库表和存储过程

情况:在远程数据库删除表执行太慢,表过多,数据库无权删除 结果:保留空数据库 方法:利用sql语句,查询网络文摘解决. 说明: 有些有约束,不能直接delete,需要先删除所有约束,语句: DECLARE c1 cursor for select 'alter table ['+ object_name(parent_obj) + '] drop constraint ['+name+']; ' from sysobjects where xtype = 'F' open c1 declare

通过使用 SQL,可以为列名称和表名称指定别名(Alias)

通过使用 SQL,可以为列名称和表名称指定别名(Alias). SQL Alias 表的 SQL Alias 语法 SELECT column_name(s) FROM table_name AS alias_name 列的 SQL Alias 语法 SELECT column_name AS alias_name FROM table_name Alias 实例: 使用表名称别名 假设我们有两个表分别是:"Persons" 和 "Product_Orders".我

SQL Server利用RowNumber()内置函数与Over关键字实现通用分页存储过程(支持单表或多表结查集分页)

原文:SQL Server利用RowNumber()内置函数与Over关键字实现通用分页存储过程(支持单表或多表结查集分页) SQL Server利用RowNumber()内置函数与Over关键字实现通用分页存储过程,支持单表或多表结查集分页,存储过程如下: /******************/ --Author:梦在旅途(www.Zuowenjun.cn) --CreateDate:2015-06-02 --Function:分页获取数据 /******************/ crea

oracle 不能是用变量来作为列名和表名 ,但使用动态sql可以;

ORACLE 不能使用变量来作为列名 和表名 一下是个人的一些验证: 1 DECLARE 2 ename1 emp.ename%TYPE ; 3 TYPE index_emp_type IS TABLE OF VARCHAR2(100) INDEX BY PLS_INTEGER ; 4 index_emp index_emp_type ; 5 BEGIN 6 index_emp(1) := 'e.ename'; 7 SELECT index_emp(1) INTO ename1 FROM emp

Sql Server存储过程和函数浅谈

今天给大家总结一下sql server中的存储过程和函数.本人是小白,里面内容比较初级,大神不喜勿喷 自行飘过就是.. 首先给大家简单列出sql server中的流控制语句,后面会用到的^_^ sql server常用控制语句 1.begin..end语句:该语句用来定义一串由顺序执行的SQL语句构成的块. begin statement block end 2.if....else语句:该语句用来定义有条件执行的某些语句. if boolen_expression statement [els