sql语句如下:DELETE FROM Sort WHERE CHARINDEX(',12,',Path) > 0上句在查询分析器可以执行现在我要把这句写成存储过程,但其它的CHARINDEX(',12,',Path)这句不知道怎么写CHARINDEX(',12,',Path)中的12是调用户存储过程时传的参数不知道我说清楚没有希望大家帮忙,解决了马上给分

解决方案 »

  1.   

    如果傳入參數是IntCreate ProceDure SP_TEST(@Path Int)
    As
    Begin 
    DELETE FROM Sort WHERE CHARINDEX(',' + Cast(@Path As Varchar) + ',',Path) > 0
    End
      

  2.   

    CREATER PROCEDURE pro
    @path char(10)
    as
    DELETE FROM Sort WHERE CHARINDEX(',' + @path + ',',Path) > 0
    go
      

  3.   

    --如果傳入參數是Int
    --創建
    Create ProceDure SP_TEST(@Path Int)
    As
    Begin 
    DELETE FROM Sort WHERE CHARINDEX(',' + Cast(@Path As Varchar) + ',',Path) > 0
    End
    GO
    --調用
    EXEC SP_TEST 12
      

  4.   

    --如果傳入參數是字符型
    --創建
    Create ProceDure SP_TEST(@Path Varchar)
    As
    Begin 
    DELETE FROM Sort WHERE CHARINDEX(',' + @Path + ',',Path) > 0
    End
    GO
    --調用
    EXEC SP_TEST '12'
      

  5.   

    ERPCoder(Most Valuable Player) ( ) 信誉:100    Blog   加为好友  2007-06-12 14:32:09  得分: 0  
     
     
       CREATER PROCEDURE pro
    @path char(10)
    as
    DELETE FROM Sort WHERE CHARINDEX(',' + @path + ',',Path) > 0
    go
      
     
    ---------傳入的參數采用char類型是有問題的,你這樣會導致刪除不了任何數據。
      

  6.   

    create proc use_del
    @Number INT
    as
    delete from Sort where CHARINDEX(',@Number,',Path)>0
    不知道你这里面的Path是不是数据库里的某个字段
    应该是这样子写法吧!你试一下吧。
      

  7.   


    Create ProceDure SP_TEST
    (
    @aa Varchar(20)
    )
    as
    DELETE FROM [Sort] WHERE CHARINDEX(',@aa,',Path) > 0
      

  8.   

    suqx520(流浪猫)和amandag(高歌) 的寫法都是有問題的。
      

  9.   

    Create ProceDure SP_TEST
    (
    @aa Varchar(20)
    )
    as
    DELETE FROM [Sort] WHERE Path like '%'+@aa+'%'
      

  10.   

    不好意思,刚才那个写错了。
    应该是写成这样子的。create proc use_del
    @Number nvarchar(10)
    as
    delete from Sort where CHARINDEX(',' + @Number + ',',Path)>0