--一种已有商品的新品牌
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 ';