日期:2014-05-18  浏览次数:20666 次

新增记录的存储过程,简单问题解决不了
IF   Exists(Select   Top   1   [name]   From   Sysobjects   Where   [name]= 'Source_add '   And   Type= 'p ')
Drop   Procedure   Source_add
Create   Procedure   [dbo].Source_add
@cpname   varchar(200),--产品名称
@guige   varchar(200),--产品规格
@price   float,--产品单价
@shuliang   int,--产品数量
@owner   varchar(200),--供货商
@jhdate     datetime,--进货日期
@remark   text     --备注
As
SET   NOCOUNT   ON
Begin
    Insert   Into   [dbo].Source
    (cpname,guige,price,shuliang,owner,jhdate,remark)
    Values
    (@cpname,@guige,@price,@shuliang,@owner,@jhdate,@remark)
End
SET   NOCOUNT   OFF


提示
服务器:   消息   111,级别   15,状态   1,行   3
'CREATE   PROCEDURE '   必须是批查询中的第一条语句。
服务器:   消息   137,级别   15,状态   1,行   17
必须声明变量   '@cpname '。

帮忙改错啊

------解决方案--------------------
'CREATE PROCEDURE ' 必须是批查询中的第一条语句。

说得很清楚啊
------解决方案--------------------
IF Exists(Select Top 1 [name] From Sysobjects Where [name]= 'Source_add ' And Type= 'p ')
Drop Procedure Source_add

go

Create Procedure [dbo].Source_add

加上 go 就行了
------解决方案--------------------
IF Exists(Select Top 1 [name] From Sysobjects Where [name]= 'Source_add ' And Type= 'p ')
Drop Procedure Source_add

go就可以

Create Procedure [dbo].Source_add 是个单独的东西