MSSQL語法
-- ================================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE PROCEDURE <Procedure_Name, sysname, ProcedureName>
-- Add the parameters for the stored procedure here
<@Param1, sysname, @p1> <Datatype_For_Param1, , int> = <Default_Value_For_Param1, , 0>,
<@Param2, sysname, @p2> <Datatype_For_Param2, , int> = <Default_Value_For_Param2, , 0>
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
SELECT <@Param1, sysname, @p1>, <@Param2, sysname, @p2>
END
GO
解決你的問題。
CREATE PROCEDURE BranchDetails @BranchCode varchar(20)
as
BEGIN
SELECT B.BookCode, BR.BranchName, I.OnHand
FROM BOOK, BRANCH, INVENTORY
WHERE BranchCode = @BranchCode
END
正確執行
exec BranchDetails 'Disneyland'
首先,標籤。它不是SQL Server就是MySQL,不能兩者兼得。其次,您是否閱讀過有關如何創建存儲過程的文檔?這甚至不是一個有效的語法。 – Eric
[踢壞的習慣:使用舊式JOIN](http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/08/bad-habits-to-kick-using-old-style-joins。 aspx) - 在ANSI - ** 92 ** SQL標準(** 25年**之前)中將舊式*逗號分隔的表*樣式列表替換爲* proper * ANSI'JOIN'語法不鼓勵使用 –