CHAR और NCHAR दोनों निश्चित लंबाई के स्ट्रिंग डेटा प्रकार हैं। इनके बीच निम्नलिखित अंतर हैं:
| CHAR डेटा प्रकार | NCHAR डेटा प्रकार |
|---|---|
| इसका पूरा नाम CHARACTER है। | इसका पूरा नाम NATIONAL CHARACTER है। |
| यह ASCII कैरेक्टर सेट का उपयोग करता है। | यह यूनिकोड कैरेक्टर सेट का उपयोग करता है और डेटा UTF8 फॉर्मेट में स्टोर होता है। |
| प्रत्येक कैरेक्टर के लिए 1 बाइट स्थान घेरता है। | प्रत्येक कैरेक्टर के लिए 2 बाइट स्थान घेरता है। |
mysql> CREATE TABLE hello1(name CHAR(20)); | mysql> CREATE TABLE hello(name NCHAR(20)); |
नोट: CHAR सिंगल-बाइट कैरेक्टर सेट (जैसे ASCII) के लिए उपयुक्त है, जबकि NCHAR मल्टी-बाइट यूनिकोड डेटा (जैसे हिंदी, चीनी, अरबी) स्टोर करने के लिए बेहतर है। NCHAR में स्टोरेज दोगुना लगता है, लेकिन यह अंतरराष्ट्रीयकरण का समर्थन करता है।