mysql - 将 mysql 文件导入 phpmyadmin 时遇到问题

标签 mysql utf-8 import phpmyadmin

当我尝试从计算机导入 mysql 表时遇到问题。 phpmyadmin 中有错误代码#1071

错误

SQL query:

CREATE TABLE user_info(

user_id BIGINT( 20 ) UNSIGNED,
screen_name VARCHAR( 25 ) ,
name VARCHAR( 200 ) ,
followers INT( 10 ) UNSIGNED,
friends INT( 10 ) UNSIGNED,
description VARCHAR( 350 ) ,
image_url VARCHAR( 200 ) ,
last_update DATETIME,
location VARCHAR( 200 ) ,
FOREIGN KEY ( user_id ) REFERENCES users( user_id ) ,
PRIMARY KEY ( user_id, screen_name, name, followers, description, image_url, location, friends )
) ENGINE = INNODB;

MySQL 说:文档

1071 - Specified key was too long; max key length is 767 bytes

最佳答案

问题在于主键的滥用 - 主键是将一行与另一行区分开来的东西,因此使用所有可能的列来创建主键是错误的。

导出数据库时出现问题,因此对脚本进行一些调整可能可以解决该问题。另一种选择是再次尝试导出数据库,但使用不同的参数。

正如我所见 - 您应该添加一个整数 id 列,只是为了区分记录,并使其 - 并且只有这一列,除非背后有一些特殊原因 - 主键。

关于mysql - 将 mysql 文件导入 phpmyadmin 时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21413574/

相关文章:

mysql - 在mysql中将文本转换为blob

丹麦语字符串的 JavaScript UTF-8 编码问题

utf-8 - ISO-8859-1 到 UTF8 的转换

java - 显示来自另一个类文件的表单

python - 什么会导致 tensorflow 导入这么慢?

php - Laravel 验证独特——忽略条件

php - MySQL如何显示两个表的数据

mysql - 如何找到相似的结果并按相似度排序?

mysql - Perl 字符串操作和 utf8/unicode

drupal - 将内容导入 drupal