PDA

View Full Version : سوال: Stored Procedureيك جدول



Iran58
یک شنبه 08 فروردین 1389, 07:34 صبح
سلام
يك جدول بنام Loginدارم كه حاوي UserNameوPasswordمي باشد
حال يكStored Procedureمي خواهم كه برودجك كندببيند كه نام كاربري ورمزدرجدول وجوددارديانه
چگونه بايداينStored Procedureرابنويسم
باتشكر

ASKaffash
یک شنبه 08 فروردین 1389, 08:03 صبح
سلام
بهتر است از یک تابع استفاده کنید :


Create Function Ok(@UserCode nVarChar(50),@UserPass nVarChar(100))
Returns Tinyint
As
Begin
Declare @Rtn Tinyint
Set @Rtn=(Select Top 1 1 From Users Where UserCode=@UserCode and UserPass=@UserPass)
Return IsNull(@Rtn,0)
End

روش استفاده :


Select dbo.Ok('Admin','MyPass')

Iran58
یک شنبه 08 فروردین 1389, 08:11 صبح
باتشكرازجواب شما
من كدم رانوشته ام
فقطStored Procedureرامي خواهم لطفابرايم بنويسيد

ASKaffash
یک شنبه 08 فروردین 1389, 08:19 صبح
سلام
اینهم SP :


Create Proc Ok
@UserCode nVarChar(50),
@UserPass nVarChar(100)
As
Select IsNull((Select Top 1 1 From Users Where UserCode=@UserCode and UserPass=@UserPass),0)

محمد سلیم آبادی
چهارشنبه 11 فروردین 1389, 23:10 عصر
سلام
اینهم SP :


Create Proc Ok
@UserCode nVarChar(50),
@UserPass nVarChar(100)
As
Select IsNull((Select Top 1 1 From Users Where UserCode=@UserCode and UserPass=@UserPass),0)


سلام آقای کفاش،
اول از همه می توانستین به جای نوع داده ی TINYINY از BIT استفاده کنین البته فرقی هم ندارن چون هر دو یک بایت فضا اشغال می کنند.

راجب تابع ISNULL ای که استفاده کردین میشه گفت روش جالبیه ولی حتی می توانین از ISNULL صرف نظر کنین. این روشی است که استفاده می کنم:


Create Proc Ok
@UserCode nVarChar(50),
@UserPass nVarChar(100)
As
SELECT TOP 1 i
FROM (SELECT 1
FROM Users
WHERE UserCode = @UserCode and UserPass = @UserPass
UNION ALL
SELECT 0) D(i)
ORDER BY i DESC;