View Full Version : اشکال متن فارسی در پارمتر OutPut یک Stored Procedure
azam2005
شنبه 07 مرداد 1385, 09:26 صبح
اشکال متن فارسی در پارمتر OutPut یک Stored Procedure
من Stored Procedure دارم که پارامتر OutPut از نوع nvarchar(100)دارد وقتی این پارامتر را در فرم دریافت میکنم با اینکه فرم از نوع UTF8ذخیره شده است اما مقدار ؟؟؟؟؟ نمایش داده میشود.
AminSobati
سه شنبه 10 مرداد 1385, 10:14 صبح
دوست عزیزم،
به چه شکل Data Entry انجام میدین در اون جدول؟ ترجیحا با Source توضیح بدین
mansoor_csharp
سه شنبه 10 مرداد 1385, 10:43 صبح
اگر یه n قبل از دیتا تون بذارین شاید درست بشه
azam2005
سه شنبه 10 مرداد 1385, 12:06 عصر
نمیشه -----------
SELECT @Message=
CASE C0805
When 'DpnEcom09Fr' then '.امکان حذف این دسته وجود ندارد این دسته حاوی کالا مصرفی است'
When 'DpnEcom18Fr' then '.امکان حذف این دسته وجود ندارد این دسته حاوی کارت اینتر نت است'
When 'DpnEcom20Fr' then '.امکان حذف این دسته وجود ندارد این دسته حاوی کارت تلفن است'
When 'DpnEcom22Fr' then '.امکان حذف این دسته وجود ندارد این دسته حاوی دانلود نرم افزار است'
--ELSE '.امکان حذف این دسته وجود ندارد'
End
From DpnEcom08Fr
Where I0801=@I0801
majid_afra222
سه شنبه 10 مرداد 1385, 13:00 عصر
نمیشه -----------
SELECT @Message=
CASE C0805
When 'DpnEcom09Fr' then '.امکان حذف این دسته وجود ندارد این دسته حاوی کالا مصرفی است'
When 'DpnEcom18Fr' then '.امکان حذف این دسته وجود ندارد این دسته حاوی کارت اینتر نت است'
When 'DpnEcom20Fr' then '.امکان حذف این دسته وجود ندارد این دسته حاوی کارت تلفن است'
When 'DpnEcom22Fr' then '.امکان حذف این دسته وجود ندارد این دسته حاوی دانلود نرم افزار است'
--ELSE '.امکان حذف این دسته وجود ندارد'
End
From DpnEcom08Fr
Where I0801=@I0801
سلام
میشه، نمیشه نداریم.
اینجوری منظوره
SELECT @Message=
CASE C0805
When 'DpnEcom09Fr' then N'.امکان حذف این دسته وجود ندارد این دسته حاوی کالا مصرفی است'
When 'DpnEcom18Fr' then N'.امکان حذف این دسته وجود ندارد این دسته حاوی کارت اینتر نت است'
When 'DpnEcom20Fr' then N'.امکان حذف این دسته وجود ندارد این دسته حاوی کارت تلفن است'
When 'DpnEcom22Fr' then N'.امکان حذف این دسته وجود ندارد این دسته حاوی دانلود نرم افزار است'
--ELSE N'.امکان حذف این دسته وجود ندارد'
End
From DpnEcom08Fr
توصیه ایمنی :
خواهشا N را جدی بگیرید
azam2005
سه شنبه 10 مرداد 1385, 14:53 عصر
قبول نمیکند جانم در Check sentax اجازه نمیدهد.
AminSobati
سه شنبه 10 مرداد 1385, 15:22 عصر
DECLARE @Message NVARCHAR(4000)
SELECT @Message=
CASE C0805
When 'DpnEcom09Fr' then N'.امکان حذف این دسته وجود ندارد این دسته حاوی کالا مصرفی است'
When 'DpnEcom18Fr' then N'.امکان حذف این دسته وجود ندارد این دسته حاوی کارت اینتر نت است'
When 'DpnEcom20Fr' then N'.امکان حذف این دسته وجود ندارد این دسته حاوی کارت تلفن است'
When 'DpnEcom22Fr' then N'.امکان حذف این دسته وجود ندارد این دسته حاوی دانلود نرم افزار است'
--ELSE N'.امکان حذف این دسته وجود ندارد'
End
From DpnEcom08Fr
majid_afra222
سه شنبه 10 مرداد 1385, 16:11 عصر
سلام
در عجبم یعنی این یه خط رو هم خودت ننوشتی :
DECLARE @Message NVARCHAR(4000)
AminSobati
سه شنبه 10 مرداد 1385, 23:23 عصر
سلام
در عجبم یعنی این یه خط رو هم خودت ننوشتی :
DECLARE @Message NVARCHAR(4000)
من که دیگه عادت کردم!
azam2005
شنبه 21 مرداد 1385, 09:40 صبح
اینم نوشتم جانم
دیگه اینقدر سرم میشه:متعجب:
ولی در قسمت :گریه:
SELECT @Message=
CASE C0805
When 'DpnEcom09Fr' then N'.امکان حذف این دسته وجود ندارد این دسته حاوی کالا مصرفی است'
When 'DpnEcom18Fr' then N'.امکان حذف این دسته وجود ندارد این دسته حاوی کارت اینتر نت است'
When 'DpnEcom20Fr' then N'.امکان حذف این دسته وجود ندارد این دسته حاوی کارت تلفن است'
When 'DpnEcom22Fr' then N'.امکان حذف این دسته وجود ندارد این دسته حاوی دانلود نرم افزار است'
--ELSE N'.امکان حذف این دسته وجود ندارد'
End
From DpnEcom08Fr
بر روی N Sentax Error می دهد.
majid_afra222
شنبه 21 مرداد 1385, 09:47 صبح
سلام
اسکریپت نوشته شده رو ارسال کن
azam2005
شنبه 21 مرداد 1385, 13:24 عصر
CREATE PROCEDURE DpnEcom08Fr_DEL
@I0801 numeric(18,0),
@Message nvarchar(150)=null output
As
if(SELECT C0805 From DpnEcom08Fr Where I0801=@I0801)<>''
SELECT @Message=
CASE C0805
When 'DpnEcom09Fr' then '.امکان حذف این دسته وجود ندارد این دسته حاوی کالا مصرفی است'
When 'DpnEcom18Fr' then '.امکان حذف این دسته وجود ندارد این دسته حاوی کارت اینتر نت است'
When 'DpnEcom20Fr' then '.امکان حذف این دسته وجود ندارد این دسته حاوی کارت تلفن است'
When 'DpnEcom22Fr' then '.امکان حذف این دسته وجود ندارد این دسته حاوی دانلود نرم افزار است'
ELSE '.امکان حذف این دسته وجود ندارد'
End
From DpnEcom08Fr
Where I0801=@I0801
else
IF EXISTS (SELECT I0801 FROM DpnEcom08Fr WHERE I0802=@I0801)
set @Message= 'امکان حذف این دسته وجود ندارد این دسته حاوی زیر دسته است'
else
begin
DELETE
From DpnEcom08Fr
Where I0801=@I0801
set @Message= '.حذف با موفقیت انجام شد'
end
Select @Message
GO
خب حالا جواب ؟
majid_afra222
شنبه 21 مرداد 1385, 14:56 عصر
سلام
میبخشی ولی اینو تست کن چون من مشکلی نمی بینم :
CREATE PROCEDURE DpnEcom08Fr_DEL
@I0801 numeric(18,0),
@Message nvarchar(150)=null output
As
SELECT @Message= CASE @I0801
When 1 then N'.امکان حذف این دسته وجود ندارد این دسته حاوی کالا مصرفی است'
When 2 then N'.امکان حذف این دسته وجود ندارد این دسته حاوی کارت اینتر نت است'
When 3 then N'.امکان حذف این دسته وجود ندارد این دسته حاوی کارت تلفن است'
When 4 then N'.امکان حذف این دسته وجود ندارد این دسته حاوی دانلود نرم افزار است'
ELSE N'.امکان حذف این دسته وجود ندارد'
End
IF (@I0801 = 100)
set @Message= @Message + char(13) + N'امکان حذف این دسته وجود ندارد این دسته حاوی زیر دسته است'
else
set @Message= @Message + char(13) + N'.حذف با موفقیت انجام شد'
declare @r nvarchar(150)
exec dbo.DpnEcom08Fr_DEL 1, @r OUTPUT
print @r
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.