Cri*_*and 1 sql sql-server stored-procedures
您好我是创建存储过程的新手,您可以帮我解决这个问题.错误:关键字"AS"附近的语法不正确.必须声明标量变量@Serial.
CREATE PROCEDURE sp_SIU
-- Add the parameters for the stored procedure here
@Serial varchar(50),
@Part varchar(50),
@Status varchar(50),
AS
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
/*SET NOCOUNT ON;*/
-- Insert statements for procedure here
--where in my form if i enter serial number it will show select values
Select SerialNumber,PartNumber,Status from Table1 where SerialNUmber = @Serial
--Then if is correct it will Update Status on combobox
Update Table1 SET
Status=@Status
where SerialNumber=@SerialNumber
--then Insert Serial Number,Parnumber to Table 2
DECLARE @Count int
select @Count = Count(SerialNumber) from Table1 WHERE SerialNumber = @Serial
IF @Count = 0
BEGIN
INSERT INTO Table2 (SerialNumber,PArtNumber)
VALUES
(@Serial, @Part)
END
RETURN @Count
RETURN
Run Code Online (Sandbox Code Playgroud)
编辑:移动已更新的信息作为问题的答案发布
哎呀我的帖子不是那么想念.可以在一个存储过程中连接这个3 sql字符串吗?
场景:{我已经在我的形式做的是,我将输入序列号,以txtserial.text通过选择SQL它会显示serialnumber,partnumber与status上lblserial.text,lblpartnumber.text和lblstatus.text.我会比较:
txtserial.text == lblserial.text
txtpartnumber.text == lblpartnumber.text
Run Code Online (Sandbox Code Playgroud)
为我的错误处理程序.
{
Select SerialNumber,PartNumber,Status from Table1 where SerialNUmber = @Serial
}
Run Code Online (Sandbox Code Playgroud)
然后,如果它们相等,那么:如果序列和部分正确,我将从cbostatus.text更新我的状态,然后使用sql upate.
{
Update Table1 SET
Status=@Status,
Modifiedby=@username,
DateModified=@Date
where SerialNumber=@Serial
}
Then insert serialnumber, using sql insert to another table.
{
INSERT INTO Table2 (SerialNumber,DateCreated,Createdby)
VALUES
(@Serial,@date,@username)
}
Run Code Online (Sandbox Code Playgroud)
什么东西likethis.")
你这里有一个流氓逗号
@Status varchar(50),
AS
Run Code Online (Sandbox Code Playgroud)
与名称之间蹒跚@Serial和@SerialNumber被这些旨在是2个不同的参数?
这条线的目的是什么?
Select SerialNumber,PartNumber,Status from Table1 where SerialNUmber = @Serial
Run Code Online (Sandbox Code Playgroud)
目前,它只会将3列结果集发送回调用应用程序.这是它打算做什么(它似乎不符合以下评论似乎意味着它是某种检查)?