PDA

View Full Version : سوال: آیا Collation فارسی در SQL Server 2008 وجود داره ؟



jaza_sa
دوشنبه 21 مرداد 1387, 10:23 صبح
سلام
با اینکه اقدامات خوب آقای ثباتی منجر به این شد که ماکروسافت Collation فارسی رو به SQL Server 2008 اضافه کنه (منبع (https://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=284192&wa=wsignin1.0)) ولی در کمال تعجب ، بعد از نصب اون این Collation رو پیدا نکردم
هر چی هم دنبال دستورات زیر گشتم به نتیجه نرسیدم

SELECT * FROM fn_helpcollations ()
WHERE NAME LIKE '%persian%'

SELECT * FROM fn_helpcollations ()
WHERE NAME LIKE '%farsi%'آیا موقع نصب اون باید تنظیم خاصی کرد ؟
آیا موقع نصب باید Collation خاصی رو انتخاب کرد ؟

باتشکر

AminSobati
دوشنبه 21 مرداد 1387, 19:55 عصر
سلام دوست عزیزم،
Query اول برای من 18 رکورد برمیگردونه. مطمئن هستین که به 2008 وصل شدین؟

ZoomLine
دوشنبه 21 مرداد 1387, 21:14 عصر
سلام jaza_sa عزیز

والا من زیاد وارد نیستم اما هنگام نصب این دو عکس رو گرفتم دیگه خودتون قضاوت کنید.

http://img29.picoodle.com/img/img29/3/8/11/f_Untitledm_60ee117.jpg

http://img28.picoodle.com/img/img28/3/8/11/f_Untitled2m_590e98c.jpg


در آخر لازم می دونم بازم از آقای امین ثباتی بابت این کار بی نظرشون تشکر کنم.

jaza_sa
چهارشنبه 23 مرداد 1387, 13:15 عصر
موقع نصب هم هر چی دنبال این Collation بودم ندیدمش !!!
ولی یه مسئله ای برام سوال شده ، وقتی @@Version رو میبینم ، نوشته : Microsoft SQL Server 2005 ، یعنی مشکل از کجاست ؟!!! :متفکر:
در ضمن این رو هم باید بگم که اول VS 2008 رو نصب کردم و SQL Server 2005 Express Edition رو هم باهاش نصب شده.
و یک سوال دیگه ، موقع نصب بهتره کدوم Collation رو انتخاب کنیم ؟

ممنون و متشکر

daneshjoo2
چهارشنبه 30 مرداد 1387, 22:52 عصر
mitoonid dar zaman nasb az ghesmate collection iteme zir ro entekhab konid:
SQL_Latin1_General_Cp1256_CI_AS
rahe digash ine ke tanha baraye un column haei ke mikhai farsi bashe tu ghesmate properties, propertie collection ro az default be:
SQL_Latin1_General_Cp1256_CI_AS
tagheir bedid. dar in surat mitunid query haye farsi ro tu formhatun estefade konid.

رضا عربلو
پنج شنبه 31 مرداد 1387, 13:44 عصر
اگر SQL server 2008 را بدون اینستنس نصب کرده اید در management studio در قسمت Server name نام کامپیوتر سرورتان (یا Ip اش) را تایپ یا انتخاب نمایید و اگر با اینستنس نصب کرده اید در قسمت Server name بصورت ComputerName\InstanceName تایپ یا انتخاب نمایید.

s.mostafa.rahmani
یک شنبه 17 شهریور 1387, 18:07 عصر
چطور میشه Collation سرور رو تغییر داد؟

AminSobati
یک شنبه 17 شهریور 1387, 18:51 عصر
http://www.sqlservercentral.com/Forums/Topic269173-146-1.aspx

s.mostafa.rahmani
دوشنبه 18 شهریور 1387, 09:13 صبح
http://www.sqlservercentral.com/Foru...173-146-1.aspx (http://www.sqlservercentral.com/Forums/Topic269173-146-1.aspx)
اما مشکل من حل نشد.
ضمناً من از SQL Server 2008 استفاده می‏کنم.

AminSobati
دوشنبه 18 شهریور 1387, 12:48 عصر
عوض کردن Collation سرور تقریبا معادل نصب مجدد SQL Server هست. همه کار باید از اول دوباره انجام بشه. اگر امکانش هست SQL Server رو نصب کنید

s.mostafa.rahmani
سه شنبه 19 شهریور 1387, 14:49 عصر
تغییر Collation سرور در SQL Server 2008:

setup.exe /Q /ACTION=REBUILDDATABASE /INSTANCENAME=MSSQLSERVER /SQLSYSADMINACCOUNTS="Rahmani" /SQLCOLLATION=SQL_Latin1_General_CP1256_CI_AS
البته قاعدتاً نیاز به پارامتر رمز عبور هم داره، مگه اینکه نوع Authentication رو Windows انتخاب کرده باشید که دستور بالا کار می‏کنه، فقط باید به جای Rahmani اسم یوزر ویندوز گذاشته بشه.
و نکته دیگه این که شکل این دستور یه کمی با 2005 فرق داره. :)

ضمناً مشکلم از این آدرس حل شد (البته با کمک دوستان خصوصاً آقای ثباتی):
http://blogs.msdn.com/psssql/archive/2008/08/29/how-to-rebuild-system-databases-in-sql-server-2008.aspx

.

محمدامین شریفی
سه شنبه 11 اسفند 1388, 12:08 عصر
mitoonid dar zaman nasb az ghesmate collection iteme zir ro entekhab konid:
SQL_Latin1_General_Cp1256_CI_AS
rahe digash ine ke tanha baraye un column haei ke mikhai farsi bashe tu ghesmate properties, propertie collection ro az default be:
SQL_Latin1_General_Cp1256_CI_AS
tagheir bedid. dar in surat mitunid query haye farsi ro tu formhatun estefade konid.

سلام.
تفاوت بین نام های collection ها در چیست؟
برای مثال SQL_Latin1_General_Cp1256_CI_AS با SQL_Latin1_General_Cp1_CI_AS چه تفاوتی میکند و برای استفاده از نویسه های فارسی در MS SQL 2k5 و MS SQL 2k8 کدام collection مناسب تر است (از کجا تفاوت این نام گذاری ها را متوجه شویم؟)

با سپاس.

mojtaba14405
یک شنبه 08 فروردین 1389, 13:01 عصر
سلام.
تفاوت بین نام های collection ها در چیست؟
برای مثال SQL_Latin1_General_Cp1256_CI_AS با SQL_Latin1_General_Cp1_CI_AS چه تفاوتی میکند و برای استفاده از نویسه های فارسی در MS SQL 2k5 و MS SQL 2k8 کدام collection مناسب تر است (از کجا تفاوت این نام گذاری ها را متوجه شویم؟)

با سپاس.


دوست من سلام
شرمنده!


تفاوت بین نام های collection ها در چیست؟collectionها بر اساس Windows System Locale متفاوت اند.در واقع برای هر Windows System Locale که در ویندوز هست یک collection وجود دارد.


(از کجا تفاوت این نام گذاری ها را متوجه شویم؟)می توانید معادل Windows System Locale ها را در جدول زیر پیدا کنید.

دانلود جدول (راپید شیر) (http://rapidshare.com/files/369071942/Windows_System_Local2.rar.html)

Default SQL Collationها برای مشخص کردن زبان (LCID (Locale ID برای مشخص کردن محل و در نهایت Code pageبرای مشخص کردن ترتیب کاراکتر ها در unicode typeها هستند(در nchar, nvarchar, and ntext).


برای استفاده از نویسه های فارسی در MS SQL 2k5 و MS SQL 2k8 کدام collection مناسب تر استاگه جدول رو ببینید برای فارسی باید از
0x429
Arabic_CI_AS
1256
استفاده کرد.که در جدول مشخص شده.

منابع:
http://www.visual-basic.it/articoli/scdcSenzaMani07a.htm
http://msdn.microsoft.com/en-us/library/aa174903%28SQL.80%29.aspx