消息207,级别16,状态1,行1无效的列名称“活动”。 [英] Msg 207, Level 16, State 1, Line 1 Invalid column name 'Active'.

查看:412
本文介绍了消息207,级别16,状态1,行1无效的列名称“活动”。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

alter  procedure test 
(
 @t1 varchar(50),
 @emp_id  varchar(15),
 @dept_id varchar(15),
 @emp_name varchar(50),
 @emp_status varchar(10)
)
 as
 begin
 
 DECLARE @SQL varchar(250)
 
 SELECT @SQL = 'insert into ' + @t1 + ' values ('+@emp_id+','+@dept_id+','+@emp_name+','+@emp_status+')'
 
 EXEC (@SQL)
    
 end 





执行测试'Tbl_101_Employee_Creation','E-00001','D-001','kiran','活跃'



错误



exec test 'Tbl_101_Employee_Creation','E-00001','D-001','kiran','Active'

ERROR

Msg 207, Level 16, State 1, Line 1
Invalid column name 'E'.
Msg 207, Level 16, State 1, Line 1
Invalid column name 'D'.
Msg 207, Level 16, State 1, Line 1
Invalid column name 'kiran'.
Msg 207, Level 16, State 1, Line 1
Invalid column name 'Active'.





< small> 添加的代码块[/ edit]



[edit]Code block added[/edit]

推荐答案

Alter procedure test 
(
@t1 varchar(50),
@emp_id varchar(15),
@dept_id varchar(15),
@emp_name varchar(50),
@emp_status varchar(10)
 
)
as
begin

DECLARE @SQL varchar(250)

SELECT @SQL = 'insert into ' + @t1 + ' values ('''+@emp_id+''','''+@dept_id+''','''+@emp_name+''','''+@emp_status+ ')'

print  (@SQL)

end 


你可以自由使用参数任何单一的代码。如下..

改变程序测试



@ t1 varchar(50),

@emp_id varchar (15),

@dept_id varchar(15),

@emp_name varchar(50),

@emp_status varchar(10)





as

开始



DECLARE @SQL varchar(250)



SELECT @SQL ='插入@t1值(@ emp_id,@ dept_id,@ emp_name,@ emp_status)'



EXEC(@SQL)



end
you can use parameter freely without any single codes. like below..
alter procedure test
(
@t1 varchar(50),
@emp_id varchar(15),
@dept_id varchar(15),
@emp_name varchar(50),
@emp_status varchar(10)

)
as
begin

DECLARE @SQL varchar(250)

SELECT @SQL = 'insert into @t1 values (@emp_id,@dept_id,@emp_name,@emp_status)'

EXEC (@SQL)

end


Alter procedure test 
(
@t1 varchar(50),
@emp_id varchar(15),
@dept_id varchar(15),
@emp_name varchar(50),
@emp_status varchar(10)
 
)
as
begin
 
DECLARE @SQL varchar(250)
 
SELECT @SQL = 'insert into ' + @t1 + ' values ('''+@emp_id+''','''+@dept_id+''','''+@emp_name+''','''+@emp_status+ ''')'
 
EXEC  (@SQL)
 
end 


这篇关于消息207,级别16,状态1,行1无效的列名称“活动”。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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