MySQL将NCHAR定义为一种指示CHAR列应使用预定义字符集的方式。MySQL将Utf8用作其预定义字符集。
在下面的示例中,我们将创建一个名为“ Student1”的表。在此表中,我们用三种不同的声明样式声明三列的数据类型,这三种样式彼此相当。这都是由于NCHAR。
mysql> Create table Student1(Name Char(10) character set utf8, Address NATIONAL CHARACTER(10), FatherName NCHAR(10));
现在检查表的状态,借助下面的查询,我们可以看到所有声明样式都是相同的。
mysql> show create table Student1\G *************************** 1. row *************************** Table: Student1 Create Table: CREATE TABLE `student1` ( `Name` char(10) CHARACTER SET utf8 DEFAULT NULL, `Address` char(10) CHARACTER SET utf8 DEFAULT NULL, `FatherName` char(10) CHARACTER SET utf8 DEFAULT NULL ) ENGINE = InnoDB DEFAULT CHARSET = latin1 1 row in set (0.00 sec)