با سلام خدمت دوستان عزیز
من چه جوری می تونم در Sql server 2005 اعداد رو در یک فیلدی که از نوع varchar هستش به صورت فارسی وارد کنم ؟ اصلا چنین امکانی وجود دارد یا خیر ؟ اگر امکانش هست لطفا منو راهنمایی کنید .
با تشکر
با سلام خدمت دوستان عزیز
من چه جوری می تونم در Sql server 2005 اعداد رو در یک فیلدی که از نوع varchar هستش به صورت فارسی وارد کنم ؟ اصلا چنین امکانی وجود دارد یا خیر ؟ اگر امکانش هست لطفا منو راهنمایی کنید .
با تشکر
توی فیلد nvarchar میتونید اعداد فارسی داشته باشید نه varchar
میتونید تابعی بنویسید که کارش تغییر کدینگ کاراکترها باشه
مثال زیر میتونه کمکتون کنه
Declare @Str nvarchar(max)
Set @Str = '1234567890'
Set @Str = Replace(
Replace(
Replace(
Replace(
Replace(
Replace(
Replace(
Replace(
Replace(
Replace(@Str, NChar(0x30),NChar(0x0660))
, NChar(0x31),NChar(0x0661))
, NChar(0x32),NChar(0x0662))
, NChar(0x33),NChar(0x0663))
, NChar(0x34),NChar(0x0664))
, NChar(0x35),NChar(0x0665))
, NChar(0x36),NChar(0x0666))
, NChar(0x37),NChar(0x0667))
, NChar(0x38),NChar(0x0668))
, NChar(0x39),NChar(0x0669))
Select @Str
از روي كنجكاوي مي پرسم : فارسي كردن اعدا چه سودي برايتان خواهد داشت؟
روش آسان تری سراغ ندارید ؟ این روش یک مقدار پیچیده وسخت است . واگر ممکن است کمی درمورد این کدینگ ها برایم توضیح دهید.میتونید تابعی بنویسید که کارش تغییر کدینگ کاراکترها باشه
ممنون
واضح است برای خوانایی بهتر ودر واقع User friendly تر بودن .از روي كنجكاوي مي پرسم : فارسي كردن اعدا چه سودي برايتان خواهد داشت؟
شما یا باید در سمت برنامه کاربر رو مجبور به وارد کردن کاراکترهای فارسی کنید یا در سمت دیتابیس. کدینگها هم چیز خاصی نیستند هر کاراکتر یک کد عددی داره توی دستور میاد اعداد انگلیسی رو (بر اساس کد اونها) به کاراکترهای فارسی تبدیل میکنه.روش آسان تری سراغ ندارید ؟ این روش یک مقدار پیچیده وسخت است . واگر ممکن است کمی درمورد این کدینگ ها برایم توضیح دهید.
در کل راهی بجز تغییر کدینگ وجود نداره. البته با تغییر تنظیمات Regional هم میتونید این کار رو انجام بدید ولی این کار توصیه نمیشه چون هم در بعضی ازقسمتها این کار جواب نمیده هم باعث دخالت در تنظیمات کاربر میشید.
2 نكته را طبق تجربه عرض ميكنم
1- در مورد تغير كد هاي اعداد در خود بانك با احتياط عمل كنيد . ممكن است بسياري از عمليات روي اعداد را دچار مشكل كنيد .
2- در مورد نمايش اعداد در برنامه سعي كنيد از تغير فونت استفاده كنيد تا اعداد را فارسي نمايش دهيد