CREATE PROCEDURE GetCategories
(@ID VARCHAR(20)
)
AS
IF (@ID<>0) OR (@ID<>'')
BEGIN
SELECT
NodeId,
ParentId, 
NodeName 
FROM News_Categories 
         WHERE NodeId = @ID
ORDER BY OrderId
END ELSE BEGIN
  SELECT
NodeId,
ParentId, 
NodeName
FROM News_Categories 
         --WHERE NodeId = @ID
ORDER BY OrderIdENDRETURN 0
GO

解决方案 »

  1.   

    CREATE PROCEDURE GetCategories   @ID  int
         AS
      if @id=0  or  isnull(@ID)  then
    SELECT
    NodeId,
    ParentId, 
    NodeName, 
    FROM News_Categories 
    ORDER BY OrderId
      else
    SELECT
    NodeId,
    ParentId, 
    NodeName, 
    FROM News_Categories 
             where NodeId = @ID
    ORDER BY OrderId
    RETURN 0
    GO
      

  2.   

    CREATE PROCEDURE GetCategories
    @id varchar(1024)
         AS
    if @id=0 or @id=null
    then
    begin SELECT
    NodeId,
    ParentId, 
    NodeName, 
    FROM News_Categories 
    ORDER BY OrderId
    end
    else
    RETURN 0
    GO
      

  3.   

    忘了一处
    CREATE PROCEDURE GetCategories   @ID  int
         AS
      if @id=0  or  isnull(@ID)  then
    SELECT
    NodeId,
    ParentId, 
    NodeName, 
    FROM News_Categories 
    ORDER BY OrderId
      else
    SELECT
    NodeId,
    ParentId, 
    NodeName, 
    FROM News_Categories 
             where NodeId = @ID
    ORDER BY OrderId
    RETURN 0
    GO
      

  4.   

    CREATE PROCEDURE GetCategories
    @id int
      AS
    if @id=0 
    begin 
      SELECT
    NodeId,
    ParentId, 
    NodeName, 
    FROM News_Categories 
    ORDER BY OrderId
    end 
    else
     begin 
    SELECT
    NodeId,
    ParentId, 
    NodeName, 
    FROM News_Categories 
             where NodeId = @ID  
    end 
    GO
      

  5.   

    忘了
     if isnull(@id,0)=0CREATE PROCEDURE GetCategories
    @id int
    ASif isnull(@id,0)=0
    if @id=0 
    begin 
      SELECT
    NodeId,
    ParentId, 
    NodeName, 
    FROM News_Categories 
    ORDER BY OrderId
    end 
    else
     begin 
    SELECT
    NodeId,
    ParentId, 
    NodeName, 
    FROM News_Categories 
             where NodeId = @ID  
    end 
    GO
      

  6.   

    CREATE PROCEDURE GetCategories
    @id int
    ASif isnull(@id,0)=0
    set @id=0if @id=0 
    begin 
      SELECT
    NodeId,
    ParentId, 
    NodeName, 
    FROM News_Categories 
    ORDER BY OrderId
    end 
    else
     begin 
    SELECT
    NodeId,
    ParentId, 
    NodeName, 
    FROM News_Categories 
             where NodeId = @ID  
    end 
    GO
      

  7.   

    我倒~~~~~除了1楼的,楼下的都过不了检查啊! isnull函数要求有2个参数,在关键字FORM附近有语法错误
      

  8.   

    CREATE PROCEDURE GetCategories @id int = 0
    AS
    begin
    if @id = 0
    SELECT
    NodeId,
    ParentId, 
    NodeName 
    FROM News_Categories ORDER BY OrderId
    else
    SELECT
    NodeId,
    ParentId, 
    NodeName
    FROM News_Categories where NodeId = @ID ORDER BY OrderId
    end
    GO
      

  9.   

    调用:
    返回全部结果集:
    exec GetCategories 
    只返回符合条件NodeId = @ID 的结果集:
    exec GetCategories 100
      

  10.   

    调用:
    返回全部结果集:
    exec GetCategories 或 exec GetCategories 0
    只返回符合条件NodeId = @ID 的结果集:
    exec GetCategories 100
      

  11.   

    CREATE PROCEDURE GetCategories
    (@ID int=0
    )
    AS
    IF (@ID<>0) 
    BEGIN
    SELECT
    NodeId,
    ParentId, 
    NodeName 
    FROM News_Categories 
             WHERE NodeId = @ID
    ORDER BY OrderId
    END ELSE BEGIN
      SELECT
    NodeId,
    ParentId, 
    NodeName
    FROM News_Categories 
              ORDER BY OrderIdEND
      

  12.   

    CREATE PROCEDURE GetCategories
    @ID VARCHAR(20)
    AS
    BEGIN
    IF (@ID<>0) OR (@ID<>'')
    BEGIN
    SELECT
    NodeId,
    ParentId, 
    NodeName 
    FROM News_Categories 
             WHERE NodeId = @ID
    ORDER BY OrderId
    ENDELSE
    BEGIN
    SELECT
    NodeId,
    ParentId, 
    NodeName
    FROM News_Categories 
              ORDER BY OrderId
    ENDRETURN 0
    END
    GO
      

  13.   

    调用:
    返回全部结果集:
    exec GetCategories 或 exec GetCategories 0
    只返回符合条件NodeId = @ID 的结果集:
    exec GetCategories 100