粘贴数据中的字段数与 table 中的列不匹配
Number of fields in pasted data doesn't match the columns in the table
情况
我有一个包含 8 列的 table,然后我还需要 2 个字段:
- company_wieght
- server_type_weight
所以我 运行 迁移以添加这些字段,现在我有 10 列。
我现在有 0 个数据。
我要
到copy/paste所有数据从我的临时服务器返回到我的本地。我一直收到错误消息:
我该如何解决这个问题?
有没有办法强制粘贴行,并将其他 2 行保留为 NULL/blank?有了它,我可以稍后通过迁移向它们添加数据。
我现在有点卡住了。
一种方法:
确保您的新列在迁移中可以为空
$table->integer('company_weight')->nullable(); // make sure you use nullable()
$table->integer('server_type_weight')->nullable();
将 table 数据转储到您的暂存服务器上
$ mysqldump -u<username> -p --no-create-info --compact --skip-comments \
--complete-insert <database> <table> > /path/to/file.sql
将结果 file.sql 下载到您的本地计算机
将数据导入本地数据库
$ mysql -u<username> -p <database> < /path/to/file.sql
这里似乎有几个方面的问题。对于 MySQL Workbench:copy/paste 操作中的源列和目标列计数必须相同,不能绕过它。但是,我不会用 copy/paste 复制数据,除非它真的不多而且不需要很多次。相反,我会将现有数据导出到 csv 文件,将其加载到电子表格中(例如在 Open Office 中)并添加 2 个虚拟列。再次将其导出到 csv 并导入 MySQL Workbench.
情况
我有一个包含 8 列的 table,然后我还需要 2 个字段:
- company_wieght
- server_type_weight
所以我 运行 迁移以添加这些字段,现在我有 10 列。
我现在有 0 个数据。
我要
到copy/paste所有数据从我的临时服务器返回到我的本地。我一直收到错误消息:
我该如何解决这个问题?
有没有办法强制粘贴行,并将其他 2 行保留为 NULL/blank?有了它,我可以稍后通过迁移向它们添加数据。
我现在有点卡住了。
一种方法:
确保您的新列在迁移中可以为空
$table->integer('company_weight')->nullable(); // make sure you use nullable() $table->integer('server_type_weight')->nullable();
将 table 数据转储到您的暂存服务器上
$ mysqldump -u<username> -p --no-create-info --compact --skip-comments \ --complete-insert <database> <table> > /path/to/file.sql
将结果 file.sql 下载到您的本地计算机
将数据导入本地数据库
$ mysql -u<username> -p <database> < /path/to/file.sql
这里似乎有几个方面的问题。对于 MySQL Workbench:copy/paste 操作中的源列和目标列计数必须相同,不能绕过它。但是,我不会用 copy/paste 复制数据,除非它真的不多而且不需要很多次。相反,我会将现有数据导出到 csv 文件,将其加载到电子表格中(例如在 Open Office 中)并添加 2 个虚拟列。再次将其导出到 csv 并导入 MySQL Workbench.