PDA

View Full Version : توضیحی در مورد N ها !!!



Elham_gh
چهارشنبه 12 بهمن 1384, 16:31 عصر
در چند تاپیک مطالبی عنوان شده بود که فکر می کنم در مورد کاربرد و مفهوم Nها(!!) در SQL Server بعضی از دوستان دچار اشتباه شده اند.
منظور من از Nها :Nchar ,NVarChar,NText وInsert کردن مقادیر با فرمت N’…’ و نظایر آنهاست.

زمانی که ما می خواهیم اطلاعات را به صورت فارسی در فیلدها ذخیره کنیم یا بازیابی کنیم , الزامی نداره نوع فیلدمان Nchar ,NVarChar,NText باشد. یا زمان ذخیره با فرمت N’….’ استفاده کنید. سیستم عامل ویندوز و SQL Server به خوبی CodePage 1256 را که CodePage فارسی است ساپورت می کنند. و اگر حین نصب SQL Server , CodePage خود را درست set کرده باشین, هیچ مشکلی با زبان فارسی ندارید.و Char, Varchar و Text نیز به خوبی اطلاعات فارسی شما را ساپورت می کنند. اگرم در حین نصب این set را درست انجام ندادید با Rebuilm , Settingهای خودرا اصلاح کنید(که البته تبعات خاص خود را ممکن است داشته باشد)

پس این قالبها برای چه کاربردی هستند؟
دوستان , زمانی که ما از Nها استفاده می کنیم , در حقیقت از Unicode استفاده می کنیم.اطلاعات ذخیره شده در
Nchar ,NVarChar,NText 2 برابر char , VarChar, Text فضا اشغال می کنند. شما زمانی از این قالبها استفاده می کنید که بخواهید اطلاعات را تحت وب نمایش دهید و برای اینکه هر کس با هر سیستم عاملی برای دیدن اطلاعات مشکل نداشته باشد اطلاعات را به صورت Unicode نگهداری می کنید.

اگر مشکل نمایش اطلاعات فارسیتان را دارید , مشکلتان جای دیگریست .

aki
شنبه 15 مهر 1385, 08:23 صبح
مشکل کجاست؟
sql من فارسی رو توی فیلد varchar به صورت ؟؟؟؟؟ ؟؟؟ ذخیره میکند

SQLPRO
دوشنبه 17 مهر 1385, 00:02 صبح
مشکل کجاست؟
sql من فارسی رو توی فیلد varchar به صورت ؟؟؟؟؟ ؟؟؟ ذخیره میکند با سلام

ببینید شما نوع دیتابیس رو باید از نوع عربی انتخاب کنید و به Encoding صفحه تان هم در وب توجه کنید.
موفق و موید باشید

*** ویرایش شد ، جو سایت رو متشنج نکنید. ( مسعود )***

tayebeh
دوشنبه 17 مهر 1385, 07:13 صبح
باسلام
آقا/خانوم aki این لینک رو نگاه کنید.شاید کمکتون کنه
http://barnamenevis.org/forum/showthread.php?t=51844&highlight=collation

aki
سه شنبه 18 مهر 1385, 14:22 عصر
ممنونم دوستان

SabaSabouhi
دوشنبه 24 مهر 1385, 14:47 عصر
مشکل کجاست؟
sql من فارسی رو توی فیلد varchar به صورت ؟؟؟؟؟ ؟؟؟ ذخیره میکند

با سلام
به احتمال زیاد درست ذخیره می‌کند اما وقتی در Enterprise Manager می‌خواهید آن را ببینید به صورت ؟؟؟؟ می‌بینید. در این صورت به مسیر Control Panel~Regional and Lanquage Options~Advanced بروید و در قسمت Lanquage for non-Unicode programs زبان فارسی را انتخاب کنید، مشکلتان حل می‌شود.

صبا صبوحی