|
|
|
nvarchar คืออะไร ใช้งานอย่างไร แตกต่างจาก varchar ย่างไร |
|
|
|
|
|
|
|
อยากรู้เหมือนกันครับ
|
|
|
|
|
Date :
2009-02-27 14:47:00 |
By :
shoichi_10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่เคยใช้อะครับ ใช้แต่ varchar
|
|
|
|
|
Date :
2009-03-12 00:43:56 |
By :
mixarstudio |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
โดยหลักๆแล้ว nvarchar กับ varchar จะต่างกันตรง nvarchar จะเก็บตัวอักษรที่ใช้ code เป็น unicode ได้ซึ่ง 1 ตัวอักษรจะใช้ 2 byte ในการเก็บส่วน varchar จะเก็บ 1 byte คับส่วนเรื่องความกว้างจะเก็บเหมือนกันครับ โดยจะเก็บเป็นจำนวนที่ใช้งานจริงไม่รวม space ^^
|
|
|
|
|
Date :
2009-03-12 15:37:41 |
By :
birdza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
nvarchar กับ varchar จะต่างกันตรง nvarchar จะเก็บตัวอักษรที่ใช้ code เป็น unicode ได้
ซึ่ง 1 ตัวอักษรจะใช้แค่ 2 byte ในการเก็บส่วน varchar ใน 1 ตัวอักษรจะเก็บใช้ 1 byte ในการเก็บ
ดังนั้นถ้าเรามี table ที่ต้องเก็บข้อความหลายภาษาอาจต้องใช้ nvarchar ส่วนถ้าเก็บแค่ อังกฤษกับไทย ใช้ varchar ก็พอครับ
|
|
|
|
|
Date :
2009-03-13 19:16:12 |
By :
mixarstudio |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าจำไม่ผิด varchar ถ้าประกาศไว้ 10 แต่ข้อมูลมี แค่ 5 จะเกิด space ต่อท้ายข้อมูลอีก 5 ครับ
ส่วน nvarchar ประกาศ 10 มีข้อมูลแค่ 5 เวลาดึงข้อมูลออกมาก็จะได้เท่านั้นครับ ไม่มี space ต่อท้ายข้อมูลนั้นครับ
ไม่รู้ถูกป่าวนะ จำไม่ได้อ่ะ
|
|
|
|
|
Date :
2009-08-20 13:41:38 |
By :
finex |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าไม่แน่ใจอย่างมั่ว ขอร้องเหอะ เซ็งเป็ดดดดดดดดดดดดดดดด
เห้อคนไทย
char ประกาศเท่าไหน เก็บเท่านั้น ประกาศ10 ใช้5 ก็เก็บ10
varchar --> variable char อ่านว่า ยืดหยุ่น ประกาศ10 ใช้5 เก็บ5
nvarchar --> for unicode variable char อ่านว่า ยูนิโค้ด ยืดหยุ่น ด้วย ประกาศ10 ใช้5 เก็บ5 แต่1char/2byte or4byte แล้วแต่ unicode กี่บิต
อ่านซะบ้าง แล้วจำ อย่ามามั่ว โดยไม่อ่านมาก่อน
หัดอ่านความคิดที่มีอยู่บนๆซะบ้างอย่าคิดว่าตัวเองถูกเสมอ
รับฟังความคิดคนอื่นบ้าง
|
|
|
|
|
Date :
2009-10-29 14:24:23 |
By :
อ่านซะบ้าง แล้วจำ อย่ามามั่ว |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
No. 8 อย่าดุคนอื่นมาก โง่ก่อนแล้วค่อยฉลาด ไม่ผิด จริงไหม
แต่ก็เห็นด้วยนะ อ่านก่อนแล้วค่อยแสดงความคิดเห็น ค๊าบบ
ขอบคุณนะ No. 8 กระจ่างขึ้นเยอะเลยคำตอบ
|
|
|
|
|
Date :
2010-01-06 00:17:05 |
By :
เอก |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เอาน่าๆ มันก็ต้องเคยมั่วกันมาหมดนั่นแหละ ต้องเคยลองผิดลองถูกกันบ้างเป็นเรื่องธรรมดา
จะรอตัวอย่างอย่างเดียวพอดีแห้งเหี่ยวตาย ผิดเป็นครู อายครูบ่รู้วิชา อายภรรยาบ่มีบุตร
ถ้าจะให้สุดๆ ต้องเอาครูมาเป็นภรรยา จะได้ทั้งวิชาและก็บุตร
|
|
|
|
|
Date :
2010-01-06 09:01:46 |
By :
tungman |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เห็นด้วยครับ ถ้าไม่รู้จริงอย่ามั่วตอบครับ เพราะทำให้เข้าใจผิดกันหมด ไม่รู้ก็คือไม่รู้ หรือ รู้แต่ไม่หมด ก็ให้บอกเฉาะส่วนที่เรารู้ ไม่ใช่มาตอบแล้วบอกไม่แน่ใจเหมือนกัน หรือจำไม่ได้ งั้นก็ไม่ต้องตอบดีกว่า ควรหาข้อมูลที่มันถูกต้อง แล้วค่อยตอบนะครับ
|
|
|
|
|
Date :
2010-01-18 15:35:57 |
By :
ob |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
จุ๊ จุ๊ อย่าเอ็ดไปเดี๋ยวคนอื่นเขารู้หมด ว่าที่ผมตอบมาเป็นร้อยกระทู้น่ะ มั่วไปเกือบ 50% อิอิ
|
|
|
|
|
Date :
2010-01-18 16:03:21 |
By :
tungman |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณ No. 8 ที่ให้ความกระจ่างค่ะ
เห็นด้วยแม้จะใช้คำพูดที่แรง แต่คนไทย ไม่แรงก็ไม่สะดุ้ง
ถูกอยู่ทุกคนต้องโง่ก่อนฉลาด ไม่ว่าชาติอะไร แต่ต้องไม่โง่แล้วอวดฉลาด จริงไหม?
|
|
|
|
|
Date :
2010-04-17 16:57:21 |
By :
n_n |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อ่านมาแรกๆก็งง ไอ้ nvarchar ที่อธิบายมา ทำไมอ่านไปอ่านมา ให้ความรู้สึกเหมือน char มากๆเลย
พอมาเจอ คห.8 รู้เลย ว่าไม่ได้คิดไปเอง
เกือบจำผิดไปแล้วไหมหล่ะ เพราะเคยใช้อยู่เหมือนกัน เจ้า nvar เนี่ย เวลา select ข้อมูลมันออกมาปะแหล่มๆ เพี้ยนๆ แต่ดูในฐานข้อมูล มันเป็นภาษาไทย
|
|
|
|
|
Date :
2010-04-29 14:00:45 |
By :
www.siam-minimart.com |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ความคิดเห็น 6 น่าสนใจสุดเดี๋ยวขอลอง ก่อนนะครับ
เพราะว่ามันจะเกี่ยวของกับภาษาด้วยครับ ใช้ในการค้นหาตอน select (มั้ง)
|
|
|
|
|
Date :
2010-12-01 15:10:52 |
By :
บี |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ครับเห็นด้วยครับ ตอบแบบไหนก้อรับได้ครับ ขออย่างเดียวอย่าตอบ2มาตรฐาน
|
|
|
|
|
Date :
2010-12-01 15:47:57 |
By :
noizeless |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถามได้ดี และคนอธิบายก็ตอบได้ดีมากครับ
|
|
|
|
|
Date :
2010-12-01 21:09:35 |
By :
ninggg |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำไมต้อง "เห้อคนไทย" ด้วย
แล้วคนที่ตอบนั้นไม่ใช้คนไทยเหรอครับ บางครั้งการตอบผิดมันก็ไม่ใช้สิ่งที่ผิดเสมอไป มานเป็นการบอกว่า "เราขอยื่นมือมาช่วยเหลือ" เขาเหมือนกันนะครับ
^ ^
|
|
|
|
|
Date :
2010-12-02 09:20:24 |
By :
zero1150kfc |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เป็นอย่างงี้นี่เอง
|
|
|
|
|
Date :
2010-12-02 20:39:43 |
By :
tongarclub |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คุ้นๆ นะกระทู้แบบนี้ และก็เคยมีคนมาดุคนอื่นอย่างงี้แหละ รู้ก็บอกว่ารู้ดีๆสิครับ คนอื่นๆ
คนเราเข้าใจผิดหรือจำผิดกันได้ ไม่มีใครรู้ หรือ จำได้ทุกเรื่องน้อ
คนไทยใจเย็นๆ
|
|
|
|
|
Date :
2010-12-08 10:41:55 |
By :
madoadza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (VB.NET)
Dim str As String
|
|
|
|
|
Date :
2010-12-24 13:21:09 |
By :
af |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
varchar --> จะเก็บพวก สัญญาลักษณ์พิเศษมาก ๆได้คับ อย่างถ้าเรา จะเก็บ TAG HTML <head> <body>
มันจะเก็บได้ ใช้พื้นที่มากกว่าคับ
nvarchar - ไม่สามารถ เก็บ < > ได้น่ะคับ " ' ' TAG HTML จะเก็บไม่ได้
จำได้พอดีตอนทำโปรเจ็คทำ CMS ลงไปปกติใช้ nvarchar แต่ต้องเปลี่ยนเพราะ add ไม่ลง
|
|
|
|
|
Date :
2011-11-03 17:39:21 |
By :
นัท |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช้ varchar แล้ว sql server 2005 ไม่แสดงภาษาไทยคะ
อยากทราบว่าเกี่ยวกะ collection ไหม เราเปลี่ยนเป็น เป็น Thai_CI_AS , Thai_CI_AI แล้ว ก็เหมือนเดิม
พอใช้ nvarchar แล้ว สามารถแสดงภาษาไทยได้
ถ้าเป็นแบบนี้ก้อใช้ nvarchar ได้เลยหรือป่าวคะ หรือมีวิธีไหนอีกบ้างคะ
|
|
|
|
|
Date :
2011-11-14 10:15:33 |
By :
puy |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^__^ เข้ามาเจอช้าไปหน่อย ตอบไปหมดและ ^__^
unicode ผม้ขเข้าใจว่า ถ้าเก็บ Eng จะเก็บ 1 Byte (ตามที่ผมเคยทำการทดสอบ)
ส่วน ภาษาไทย นั้น จะเก็บ 3Byte แต่ถ้า ภาษาอื่น ไม่ได้ทดสอบครับ
char จะเร็วกว่าตัวอื่น แต่ใช้งานยากและอาจทำให้เกิด Bug ถ้าเราเขียน Program ไม่ดี ดังนั้น ให้ดูด้วยว่า ขนาดที่เราเก็บนั้นมันจะมี Space Bar หรือ %20 เก็บไว้ด้วย (Code 32) และตรงจุดนี้มันจะทำให้ผิดพลาดได้ง่ายถ้าไปเจอคนที่ไม่เข้าใจไปใช้งาน
varchar เก็บตาม Byte ที่เเก็บก็จริง แต่ว่าจะต้องมีส่วนการจองเพื่อรอขยายเหมือนกับ Type อื่นๆ (ลองทดสอบจับขนาด DB ดูครับ) และมีตัวจัดการมากกว่า char ครับ ดังนั้นจะช้ากว่า char เล็กน้อยครับ
nvarchar เก็บแบบ Unicode ครับ เก็บมันได้ทุกภาษา และช้ากว่า varchar (ไม่มาก) แต่การเก็บจะเก็บประมาณ 3Byte ตอนทดสอบด้วยภาษาไทยครับ (ตอนนี้ SQL Server 2008 ไม่ได้ทดสอบ)
ส่วนที่คุณข้างบนบอกว่าเปลี่ยน Colletion แล้วยังแสดงเป็นตัวยิกยือ ให้ลองดู Source ที่ส่งมายัง DB ด้วยครับว่าเป็นอะไรเป็น TH หรือ เป็น Unicode หรือเป็น Code Page อื่นๆแล้วทำให้การส่งข้อมูลมาไม่ใช่ Unicode หรือ Thai ครับ ^___^ ลองดูครับ อาจพอช่วยได้
จริงๆแล้วการเราประกาศ varchar(500) แล้วเก็บ 2 Byte ก็ไม่ใช่วาาจะใช้ 2 Byte จริงๆนะครับ จริงๆ DB ได้ทำการจอง Space ไว้ให้เราแล้วครับตอนที่เก็บ แต่ Engine ได้ Return String มาตามที่เราเก็บครับ เพราะลดความวุ่นวายของ char ธรรมดาครับ
|
|
|
|
|
Date :
2012-03-08 15:45:49 |
By :
นักสู้ครับ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใจเย็นๆๆแต่ก้อได้ความรู้เยอะมาก
|
|
|
|
|
Date :
2012-04-20 09:37:48 |
By :
phantham |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Date :
2012-07-12 10:36:57 |
By :
ซาลาเปา |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมเกียดคนไทยแบบ ความเห็นที่ 8 ครับ
ว่าคนอื่นทั้งๆ แน่ใจหรือว่าตัวเองรู้จริง?
- คุณกำลังเอา unicode encoding มามั่วกับ database storage?
- หัวข้ออยู่ใน .Net ดังนั้นผมขออ้างเป็น SQL Server (อันนี้ผมถือวิสาสะ สมมุติเอาเอง)
ในเมื่อบอกให้คนอื่นอ่าน ก็อ่านดูนะครับ (ผมจะใส่อ้างอิงให้ด้วย)
SQL Server stores Unicode data "all Unicode characters are stored by using 2 bytes"
ที่มา: http://msdn.microsoft.com/en-us/library/ms189617.aspx
ถ้าจะคิดต่อว่าคนอื่น ก็ขอที่อ้างอิงและที่มาด้วย ไม่ใช่มาแค่หัวตัวเอง :P
ขอ copy ประโยค และ นามสมมุติมาใช้นะ
"ถ้าไม่แน่ใจอย่างมั่ว ขอร้องเหอะ เซ็งเป็ดดดดดดดดดดดดดดดด
เห้อคนไทย"
"อ่านซะบ้าง แล้วจำ อย่ามามั่ว โดยไม่อ่านมาก่อน
หัดอ่านความคิดที่มีอยู่บนๆซะบ้างอย่าคิดว่าตัวเองถูกเสมอ
รับฟังความคิดคนอื่นบ้าง"
note: คงไม่ออกมาบอกว่าผมพูดเรื่องตัวแปรนะ? เพราะมันเรื่อง Nvarchar (ไม่มีในประเภทของตัวแปรใน .net มีแต่ใน database)
|
|
|
|
|
Date :
2012-12-23 19:19:07 |
By :
อ่านซะบ้าง แล้วจำ อย่ามามั่ว |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ต่อจากความเห็นที่ 29 นะครับ
ขอตอบคำถาม nvarchar/varchar
โดยใช้อ้างอิง น่าจะดีกว่า ลองดูครับ
char and varchar
http://msdn.microsoft.com/en-us/library/ms176089.aspx
nchar and nvarchar
http://msdn.microsoft.com/en-us/library/ms186939.aspx
|
|
|
|
|
Date :
2012-12-23 19:50:04 |
By :
ผมรู้เล็กน้อย-ต้องศึกษาอีกเยอะ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ที่น่าสนใจ
"the Thai language store non-Unicode characters in single byte"
อ้างอิงจาก http://msdn.microsoft.com/en-us/library/ms189617.aspx
ที่น่าสนใจ (ในโลกที่มีหลากหลายอักขระ ตัวอักษร)
เพราะปัจจุบันมักนิยมเป็น UTF-8
http://en.wikipedia.org/wiki/UTF-8
ผมก็รู้ไม่มากครับ (ถ้าได้ลองท่องโลก เราจะรู้ว่าคนที่โคตรเก่งมีมากเหลือเกินในโลกนี้โดยเฉพาะชาวต่างชาติ เขาอาจได้เปรียบเรื่องภาษาฯ เมื่อเทียบกับเรา)
|
|
|
|
|
Date :
2012-12-23 19:55:29 |
By :
ผมรู้เล็กน้อย-ต้องศึกษาอีกเยอ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขออีกนิดแล้วกันนะ
เดี๋ยวหาว่าผมก็มั่ว (ผมก็ออกตัวแล้วว่าผมไม่ได้เก่ง)
varchar: Variable-length, non-Unicode character data. The database collation determines which code page the data is stored using.
nvarchar: Variable-length Unicode character data. Dependent on the database collation for comparisons.
อ้างจากคำตอบของ sixlettervariables
http://stackoverflow.com/questions/144283/what-is-the-difference-between-varchar-and-nvarchar
เพราะเดี๋ยวอาจมีมาพูดเรื่อง MySQL หรือ Database ตัวอื่นๆ ที่ขึ้นอยู่กับ database collation
ใครใช้ PHPmyadmin คงพอนึกออก เวลาสร้าง Database
|
|
|
|
|
Date :
2012-12-23 20:07:55 |
By :
ผมรู้เล็กน้อย-ต้องศึกษาอีกเยอ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เห็นด้วยที่ควรมีแห่งอ้างอิง ที่เชื่อถือได้ครับ
ส่วนคนที่มั่ว ทำให้คนที่เข้ามาค้นข้อมูลเสียเวลาครับ บางคนจำไปผิดๆ ด้วย
คนที่มั่ว เหมือนคนทิ้งขยะไว้เกลื่อนกลาด ต้องให้คนอื่นตามเก็บตามกวาด เสียเวลา
|
|
|
|
|
Date :
2013-06-08 07:20:17 |
By :
any |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Robert Sheldon & Yesterday news.
After being dropped 35 ^ 8 feet from a helicopter and spending the next year recovering
http://www.rhsheldon.com.
|
|
|
|
|
Date :
2013-06-08 09:17:15 |
By :
ผ่านมา |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
จาก คห.14 แต่คนไทย ไม่แรงก็ไม่สะดุ้ง
...
...
ผมว่าไม่จริงครับ...เคยแล้วเหรอ ว่าไม่แรงก็ไม่สะดุ้ง...
ผมว่า เบา ๆ นี่แหละ สะดุ้งมาเยอะแล้ว ขนาดฝรั่ง ยังสะดุ้งสุดตัว ร้องวี๊ดมาแล้วนะ
.... "Oh Yes" "Oh Yes" "Oh Yes...deepper Please"
จริง ๆ นะครับ
|
|
|
|
|
Date :
2013-06-08 13:03:25 |
By :
ผ่านมาเห็นแล้วอยากช่วย |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Date :
2013-06-08 13:07:50 |
By :
ผ่านมาเห็นแล้วอยากช่วย |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มาลงชื่อในกระทู้ร้อนแรงหน่อย 555555
|
|
|
|
|
Date :
2013-06-09 16:39:19 |
By :
fonfire |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ก็ไม่รู้สินะ แค่ผ่านมา
ผมเองก็เข้ามาหาข้อมูล
แต่ผมเอง ในหลายครั้งก็เป็นคนให้ความรู้คนอื่นเช่นกัน
จำเป็นด้วยเหรอ ที่จะพูดถึงเรื่อง มั่ว ไม่มั่ว ?
จำเป็นด้วยเหรอ ที่จะต้องเหยียบหัวคนอื่นให้ตัวเองดูสูงส่ง ?
มันมีวิธีเดียวเหรอ ที่จะบอกว่า "วิธีของฉันถูก" ?
มันจำเป็นด้วยเหรอ ที่จะบอกว่า "วิธีของฉันถูก" แล้วจะต้องต่อว่าคนอื่น ?
ผลลัพธ์เพียงหนึ่ง มีวิธีการสื่อสารร้อยแปด
ถ้าคุณคิดว่าคุณรู้จริง แต่คุณสื่อสารออกมาได้เพียงเท่านี้
สาระมีหยิบมือ ที่เหลืออารมณ์ล้วนๆ
ก็ไม่รู้สินะ คิดเอา ...
|
|
|
|
|
Date :
2013-12-24 06:27:19 |
By :
ก็ไม่รู้สินะ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
จั๊กเว้าอิหยัง
|
|
|
|
|
Date :
2016-08-24 09:42:25 |
By :
TT |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เพิ่งอ่านเจอ บรรญากาศแบบนี้นะเนี๊ยะ 5555
เอา power bank ซักหน่อยไม๊ 555
|
|
|
|
|
Date :
2016-08-24 10:15:10 |
By :
lamaka.tor |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|