Page 1 of 1

สอบถามเรื่อง ภาษาไทยใน MSSQL 2005 คับผม

Posted: 28/04/2010 10:27 pm
by zcoolmax
คือมันอ่านภาษาไทยไม่ได้คับหากข้อมูลที่เขียนลงไปเป็นภาษาไทยมันจะเป็นแบบนี้ทั้งหมดเลยคับ

??????????

แบบนี้อะคับ
Image
Image

Re: สอบถามเรื่อง ภาษาไทยใน MSSQL 2005 คับผม

Posted: 29/04/2010 3:07 am
by mindphp
มีหลายวิธีนะครับ สั่ง ALTER table ก็ได้ หรือใช้ SQL server management studio ช่วยปรับก็น่าจะได้
แต่ผมแปลกใจ ตารางสร้างมาตอนไหนครับ

Re: สอบถามเรื่อง ภาษาไทยใน MSSQL 2005 คับผม

Posted: 29/04/2010 11:17 am
by zcoolmax
ผมใช้ .bak ทำการ restore เอาหนะ

เสดแล้วก้อ

ALTER DATABASE [CHARACTER_01_DBF] COLLATE Thai_CI_AS
GO

แต่ว่า Thai_CI_AS มันจะเปลี่ยนแค่ตัว DB แต่ใน table มันไม่เปลี่ยนตามมันก้อยังเป็น

Latin1_General_BIN เหมือนเดิม

ไม่ทราบว่ามันคำสั่งไหนที่เอาไป Query แล้วมันเปลี่ยนทั้งหมดไหม

Thx...

Re: สอบถามเรื่อง ภาษาไทยใน MSSQL 2005 คับผม

Posted: 29/04/2010 11:23 am
by mindphp
ลอง Export คำสั่ง sql ที่ใช้ สร้างตารางแล้วสร้างใหม่ครับ

Re: สอบถามเรื่อง ภาษาไทยใน MSSQL 2005 คับผม

Posted: 29/04/2010 1:07 pm
by zcoolmax
ก้อทำได้อยู่นะคับแต่ว่า ตารางเสียหมดเลย

ขอบคุณสำหรับคำตอบนะครับ

Re: สอบถามเรื่อง ภาษาไทยใน MSSQL 2005 คับผม

Posted: 29/04/2010 1:19 pm
by mindphp
ผมหมายถึง export คำสั่ง sql ที่ใช้ ในการสร้างตารางออกมาครับ
แล้ว เช็คดูว่า COLLATE ที่ออกมานั้นเป็น อะไร
ถ้าไม่ถูก ก็ แทนทีด้วยค่าใหม่ที่ต้องการทุกตัว แล้ว import เข้าไปใหม่

แต่ถ้าตารางมีข้อมูลอยู่แล้วใช้คำสั่ง ALTER TABLE เอาจะดีกว่า (ALTER TABLE ) นะครับ
ไม่ใช่ TABLE DATABASE ...

Re: สอบถามเรื่อง ภาษาไทยใน MSSQL 2005 คับผม

Posted: 29/04/2010 3:03 pm
by zcoolmax
use [Character_01_DBF]
ALTER TABLE [dbo].[CHARACTER_TBL] COLLATE Thai_CI_AS
GO

มัน error แบบนี้อะคับ

Msg 156, Level 15, State 1, Line 2
Incorrect syntax near the keyword 'COLLATE'.

Re: สอบถามเรื่อง ภาษาไทยใน MSSQL 2005 คับผม

Posted: 29/04/2010 5:38 pm
by mindphp
ขอดูตัวอย่าง คำสั่งสร้างตาราง ที่ export ออกมาหน่อยครับ

ส่วนคำสั่ง ALTER TABLE ต้องระบุ field ที่ต้องการเปลี่ยน ด้วยครับ