PDA

View Full Version : سوال: جستجو در Table



alphabet
دوشنبه 27 اردیبهشت 1389, 13:03 عصر
سلام

من یک Table دارم که اطلاعات افراد رو نگه می داره. می خوام براساس 4 پارامتر در جدول جستجو کنم.این پارامترا عبارتن از : شماره ملی , شماره شناسنامه , نام , نام خانوادگی . نحوه ی جستجو می خوام به نحوی باشه که کاربر اگر یک یا بیش از یکی از این پارامترا رو وارد نکنه , جستجو باز هم براساس پارامترهای وارد شده انجام بشه و نیاز به وارد کردن همه ی پارامترها جهت جستجو نباشه. Store procedure که نوشتم اینه که به درستی طبق اونچه که می خوام کار نمی کنه :



dbo.SelectPersonCode ALTER PROCEDURE
)
@CoInPersonNationalCode bigint,
@CoInPersonName nvarchar(15),
@CoInPersonFamily nvarchar(50),
@CoInPersonIdentificationNo nvarchar(11),
@CoInPersonFatherName nvarchar(15)
(
AS
;SET NOCOUNT ON
SELECT
CoInPersonCode, CoInPersonNationalCode, CoInPersonFamily, CoInPersonName, CoInPersonFatherName, CoInPersonIdentificationNo,
CoInPersonBirthDate, CoInPersonAddress, CoInPersonHomePhone


FROM CoInPerson


WHERE
CoInPersonNationalCode = @CoInPersonNationalCode) OR)
(CoInPersonName = @CoInPersonName))
AND (CoInPersonFamily = @CoInPersonFamily) AND


((CoInPersonFatherName = @CoInPersonFatherName)

محمد سلیم آبادی
دوشنبه 27 اردیبهشت 1389, 14:51 عصر
ALTER PROCEDURE dbo.SelectPersonCode
(
@CoInPersonNationalCode bigint,
@CoInPersonName nvarchar(15),
@CoInPersonFamily nvarchar(50),
@CoInPersonIdentificationNo nvarchar(11),
@CoInPersonFatherName nvarchar(15)
)
AS

SELECT CoInPersonCode, CoInPersonNationalCode, CoInPersonFamily, CoInPersonName, CoInPersonFatherName, CoInPersonIdentificationNo,
CoInPersonBirthDate, CoInPersonAddress, CoInPersonHomePhone
FROM CoInPerson
WHERE (CoInPersonNationalCode = @CoInPersonNationalCode OR @CoInPersonNationalCode IS NULL) AND
(CoInPersonName = @CoInPersonName OR @CoInPersonName IS NULL) AND
(CoInPersonFamily = @CoInPersonFamily OR @CoInPersonFamily IS NULL) AND
(CoInPersonFatherName = @CoInPersonFatherName OR @CoInPersonFatherName IS NULL)