首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据库中不识别数据类型nvarchar

数据库中不识别数据类型nvarchar
EN

Stack Overflow用户
提问于 2017-05-05 09:34:55
回答 1查看 1.9K关注 0票数 3

我试图将MySQL服务器数据导入PHPMyAdmin MySQL数据库。未识别的数据类型"nvarchar“找到。我的数据库排序规则设置为"utf_general_ci“。

EN

回答 1

Stack Overflow用户

发布于 2017-05-05 10:31:06

您不必担心由phpmyadmin而不是MySQL生成的nvarchar消息。MySQL确实允许nvarchar数据类型,请参阅MySQL手册关于国家数据字符集

标准SQL将NCHAR或NATIONAL CHAR定义为指示CHAR列应使用某些预定义字符集的方式。MySQL使用utf8作为预定义的字符集。例如,这些数据类型声明是等价的: CHAR(10),字符集utf8 (10),NCHAR(10) 这些措施也是如此: VARCHAR(10),字符集utf8 NATIONAL VARCHAR(10),NVARCHAR(10),NVARCHAR(10),NVARCHAR(10)

真正的问题是错误消息的底部:行大小太大了。此错误消息来自MySQL,这是您需要解决的错误信息。

mysql对nvarchar数据类型使用utf8字符集。mysql中的utf8字符最多使用3个字节。您的config_data字段被定义为nvarchar(21844),因此它需要最多21844*3+2=65534字节。

正如错误消息所述,一行可以长达65535字节,因此您还剩下1字节,但是其他字段将行大小推高到极限以上。

你能做的是:

  1. 减少config_data字段的长度,使整个行长度符合限制。
  2. config_data数据类型更改为varchar,并使用所需字节较少的字符集--只需确保字符集支持所需的所有字符即可。
  3. config_data数据类型更改为text,因为实际上只有一小部分文本字段的值存储在行本身中。这实际上是在错误消息本身中提出的。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43801482

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档