ccc VARCHAR(100) NOT NULL
)
insert into bbb(ccc)
select FZDY13,* from T_HR_PersonTechPost
declare @s varchar(100);
declare @fname varchar(100);
set @fname = 'FZDY'+'14';
set @s = 'insert into bbb(ccc) select top 1' + @fname + ' from T_HR_PersonTechPost' exec(@s) -- 成功 exec sp_executesql @s -- 此句正确
print @s
select * from bbb
事情是这样字的,有的时候我们想去比较两个值类型需要写一个方法,我们比较两个字符类型也需要写一个方法,在c#里面有通用类型-泛型,我们可以通过一个泛型方法就可以搞定。那么有的时候啊,我们也想通过存储过程,我们传入
表
名,
查询
出相对应
表
的数据,我们假装t-
sql
也可以面向对象首先我们假设直接定义一个参数接收这个
表
名,然后直接select
查询
结果:declare @tablName nvarchar(50...
if exists(select * from syscolumns where id=object_id('bairong_Users') and name='JxsShow')
begin
--alter table bairong_Users drop column Token --删除
字段
print '已存在'
begin
alter table bairong_U...
在编写
sql
语句或存储过程中,难免会有碰到语句中
表
名或某一
字段
名不确定,要根据条件来,考试,大提示我们可考虑用
SQL
提供的sp_execute
sql
函数,,他可执行
动态
的修改,删除,
查询
功能,至于此函数的详细解释可到
sql
帮助文档中去查看,下面我将举一个
动态
查询
的列子,包括
表
名及想
查询
的
字段
均不确定:
(ID int) (A numeric(9,2)) (B numeri
--创建测试
表
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TestRows2Columns]') AND type in (N'U'))
DROP TABLE [dbo].[TestRows2Columns]
CREATE TABLE [dbo].[TestRows2Columns](
[Id] [int] IDENTITY(1,1) NOT NULL,
DECLARE @id INT,@
sql
VARCHAR(3333);--声明两个变量;
SELECT @id=3; --给变量@id赋值;
SELECT @
sql
='SELECT f_id,f_name FROM fruits WHERE f_id= '
EXEC(@
sql
+ @id);
---
等同于“SELECT f_id,f_name FROM fru
在编写
sql
语句或存储过程中,难免会有碰到语句中
表
名或某一
字段
名不确定,要根据条件来,这时,我们可考虑用
SQL
提供的sp_execute
sql
函数,,他可执行
动态
的修改,删除,
查询
功能,至于此函数的详细解释可到
sql
帮助文档中去查看...