mysql建库或者建表的时候加不加default charset utf8 collate utf8_general_ci有什么区别
createdatabaseifnotexists库名defaultcharsetutf8collateutf8_general_ci;和createdatabase库名...
create database if not exists 库名 default charset utf8 collate utf8_general_ci;
和create database 库名; 展开
和create database 库名; 展开
1个回答
展开全部
题主你好,这是默认了字符集的语句,设置了默认的字符集之后,当创建一个varchar等字符型的字段时,不指定字符集就会使用默认的字符集,不同的字符集对各种符号的支持也都是不同的。
比如,一个emoji的符号,可能就需要使用utf8mb4_general_ci来保存,而不能使用单纯的utf8_general_ci。
同时需要注意的是,在某些框架下,连接数据库的时候需要指定连接的字符集,如果连接的字符集和字段的字符集集合关系不合适可能导致查询结果异常等。
比如,一个emoji的符号,可能就需要使用utf8mb4_general_ci来保存,而不能使用单纯的utf8_general_ci。
同时需要注意的是,在某些框架下,连接数据库的时候需要指定连接的字符集,如果连接的字符集和字段的字符集集合关系不合适可能导致查询结果异常等。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |