首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

简单的sql 有关问题 100分!

2012-03-12 
简单的sql 问题100分!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! sql语句如下:

简单的sql 问题 100分!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

sql语句如下:

DELETE   FROM   Sort   WHERE   CHARINDEX( ',12, ',Path)   >   0

上句在查询分析器可以执行

现在我要把这句写成存储过程,但其它的CHARINDEX( ',12, ',Path)这句不知道怎么写

CHARINDEX( ',12, ',Path)中的12是调用户存储过程时传的参数

不知道我说清楚没有

希望大家帮忙,解决了马上给分


[解决办法]
--如果傳入參數是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
[解决办法]
--如果傳入參數是字符型
--創建
Create ProceDure SP_TEST(@Path Varchar)
As
Begin
DELETE FROM Sort WHERE CHARINDEX( ', ' + @Path + ', ',Path) > 0
End
GO


--調用
EXEC SP_TEST '12 '
[解决办法]
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類型是有問題的,你這樣會導致刪除不了任何數據。
[解决办法]
create proc use_del
@Number INT
as
delete from Sort where CHARINDEX( ',@Number, ',Path)> 0
不知道你这里面的Path是不是数据库里的某个字段
应该是这样子写法吧!你试一下吧。
[解决办法]

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

热点排行