|
Re: 多谢斑竹,再求教。
最初由 iyyiyy 发布
[B]我去掉exec确实成功了。再请教一下。
第一:如果不去掉exec有没有成功的可能性,如果有,具体怎么写?
第二:
下面这个语句错在哪里,千万请帮我指正,多谢多谢。
declare @cwhcode varchar(10)
declare @cwhname varchar(20)
declare @cposcode varchar(20)
declare @cposname varchar(30)
declare @value varchar(80)
select @cwhcode='a101'
select @cwhname='a102'
select @cposcode='103'
select @cposname='a104'
select @value='a105'
declare @pp varchar(20)
select @pp ='p3 '
insert into InvPosition_luyin(cwhcode,cwhname,cposcode,cposname,ceng,lie,@pp) values(@cwhcode,@cwhname,@cposcode,@cposname,left(@cposcode,2),substring(@cposcode,2,2),+@value)
执行时,提示:@pp附近有语法错误。
----------------------------天那,错在哪里? [/B]
正好最近为解决固定资产模块的用户需求,写了很多类似的脚本,看看下面的脚本是否可行,也请各位高手指正:
declare @cwhcode varchar(10)
declare @cwhname varchar(20)
declare @cposcode varchar(20)
declare @cposname varchar(30)
declare @value varchar(80)
select @cwhcode='a101'
select @cwhname='a102'
select @cposcode='103'
select @cposname='a104'
select @value='a105'
declare @pp varchar(20)
select @pp ='p3 '
Exec('insert into InvPosition_luyin(cwhcode,cwhname,cposcode,cposname,ceng,lie,'+@pp+') values('+''''+@cwhcode+''''+','+''''+@cwhname+''''+','+''''+@cposcode+''''+','+''''+@cposname+''''+',left('+''''+@cposcode+''''+',2),substring('+''''+@cposcode+''''+',2,2),'+''''+@value+''''+')')
--select 'insert into InvPosition_luyin(cwhcode,cwhname,cposcode,cposname,ceng,lie,'+@pp+') values('+''''+@cwhcode+''''+','+''''+@cwhname+''''+','+''''+@cposcode+''''+','+''''+@cposname+''''+',left('+''''+@cposcode+''''+',2),substring('+''''+@cposcode+''''+',2,2),'+''''+@value+''''+')'
--或者
declare @sql varchar(255)
select @sql='insert into InvPosition_luyin(cwhcode,cwhname,cposcode,cposname,ceng,lie,'+@pp+') values('+''''+@cwhcode+''''+','+''''+@cwhname+''''+','+''''+@cposcode+''''+','+''''+@cposname+''''+',left('+''''+@cposcode+''''+',2),substring('+''''+@cposcode+''''+',2,2),'+''''+@value+''''+')'
exec(@sql) |
|