这个存储过程怎么办?

我写了一个用来创建表的存储过程:

CREATE PROCEDURE pro_CreateTable
(@strKCDH fvcKCDH,@Result tinyint = 0 OUTPUT)
AS
CREATE TABLE [dbo].[@strKCDH] (
[vcKCDH] [fvcKCDH] NOT NULL ,
[vcMMH] [fvcMMH] NOT NULL ,
[iZH] [smallint] NOT NULL ,
[cSign] [char] (1) COLLATE Chinese_PRC_CI_AS NOT NULL

) ON [PRIMARY]

if @@rowcount = 1
RETURN 0
GO

我想创建这样一个名字为:sbcj
我是这样执行:
declare @result tinyint
execute pro_createtable 'sbcj',@result

但是出来的表的名字还是@strKCDH,这个变量到底怎么用呢?
---------------------------------------------------------------

用exec ( ' CREATE TABLE [dbo].['+ @strKCDH' ] (
[vcKCDH] [fvcKCDH] NOT NULL ,
[vcMMH] [fvcMMH] NOT NULL ,
[iZH] [smallint] NOT NULL ,
[cSign] [char] (1) COLLATE Chinese_PRC_CI_AS NOT NULL ' )

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus