当前位置: 代码迷 >> Sql Server >> 再问一个带参插入的有关问题
  详细解决方案

再问一个带参插入的有关问题

热度:94   发布时间:2016-04-27 16:44:44.0
再问一个带参插入的问题
--一种已有商品的新品牌
create   proc   item
@aenames   varchar(15),
@kcnames   varchar(15),
@kenames   varchar(15)
as
exec( 'insert   into   '+   @aenames+ '   values( '[email protected]+ ', '[email protected]+ ') ');
exec( 'create   table   '[email protected]+ '(
DID   int   not   null   identity(1,1),
DCName   varchar(15)   not   null,
DImage   varchar(50),
DPrice   money   not   null
) ')
go

exec   item   'MobilePhone ', '龙心 ', 'DragonHeart ';

执行后报错如下:
服务器:   消息   128,级别   15,状态   1,行   1
在此上下文中不允许使用   '龙心 '。此处只允许使用常量、表达式或变量。不允许使用列名。
就是插入过程有问题,表能正确的被创建,请问大虾这是为什么呢?


------解决方案--------------------
create proc item
@aenames varchar(15),
@kcnames varchar(15),
@kenames varchar(15)
as
exec( 'insert into '+ @aenames+ ' values( ' ' '[email protected]+ ' ' ', ' ' '[email protected]+ ' ' ') ');
exec( 'create table '[email protected]+ '(
DID int not null identity(1,1),
DCName varchar(15) not null,
DImage varchar(50),
DPrice money not null
) ')
go
------解决方案--------------------
--try

create proc item
@aenames varchar(15),
@kcnames varchar(15),
@kenames varchar(15)
as
exec( 'insert into [ '+ @aenames+ '] values( ' ' '[email protected]+ ' ' ', ' ' '[email protected]+ ' ' ') ');
exec( 'create table [ '[email protected]+ '](
DID int not null identity(1,1),
DCName varchar(15) not null,
DImage varchar(50),
DPrice money not null
) ')
go

exec item 'MobilePhone ', '龙心 ', 'DragonHeart ';
  相关解决方案