php - MySql 部分导出数据,无法导入回来

标签 php mysql

因此我使用以下命令从表中导出了部分数据:

<?php
$con = mysqli_connect('localhost','root','','database');
$sql = "SELECT * INTO OUTFILE 'data.sql' FROM table WHERE PID<50";
mysqli_query($con, $sql);
mysqli_close($con);
?>

导出成功,我的目录中有一个“data.sql”文件,内容正是我选择的(PID从1到49的数据)。然而,每当我尝试使用 phpmyadmin 将其导入到不同数据库中具有相同名称、相同列的新表时,它总是显示错误

1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near

完整错误消息:

SQL查询:

2 奥斯汀·本尼迪克特·特里桑托 002 240000 2015-07-01 1970-01-01\N 20000 4

3 法伊丽莎·赛玛 001 120000 2015-07-01\N\N 0 2

4 蒂亚拉· Aurelia ·普拉塞蒂奥 003 230000 2015-07-01 1970-01-01\N 0 2

5 达雷尔·马克西米利安·迪甘塔拉 004 210000 2015-07-01 1970-01-01\N 0 2

6 米凯拉·雷瓦·卡里斯塔 005 210000 2015-07-01 1970-01-01\N 0 2

7 吉塞拉·乔赛琳·田·西巴拉尼 006 220000 2015-07-01 1970-01-01\N 15000 3

8 普图·普贾·西塔·拉蒂西亚 007 230000 2015-07-01 1970-01-01\N 0 2

9 米哈埃尔·卢修斯·阿卡南塔·普拉马 008 230000 2015-07-01 1970-01-01\N 0 2

MySQL 说:文档

1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在 '2 Austin Benedict Trisanto 002 240000 2015-07-01 1970-01-01\N 20000 4

附近使用的正确语法

第 1 行 3 Faylish

究竟出了什么问题?或者我做错了什么?我也应该使用 php 将其导入回来吗?

非常欢迎所有答案。预先感谢您。

最佳答案

您要导入的内容不是 SQL 格式。

此外,我从来没有运气好通过 PHPphpMyAdmin 运行它。

我只是以这种方式回答这个问题,因为这是我备份和恢复数据库的首选方法。

注意您必须拥有此方法的 shell 访问权限。

备份数据库。使用以下内容:

$ mysqldump -u UserName -p PassWord your_database > /directory/backup_file.sql

或者您可以使用mysql cli输出查询:

$ mysql -e "select * from yourTable" -u userName -p passWord YourDataBase > /directory/backup_file.sql

要将文件导入到新数据库:

$ mysql -u userName -p passWord newDatabase < /directory/backup_file.sql

通过导入,您不必指定表,因为它将存储在 sql 文件中。

可能不是您所希望的,但这是使用 PHP 执行此操作的有效替代方案。事实上,它是首选方法,因为它快速、简单、可靠且有效。除了所需的 SQL 查询之外,无需任何代码。更少的代码 = 更少的破坏机会。

关于php - MySql 部分导出数据,无法导入回来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34961359/

相关文章:

php - PHP和MYSQL中2个数据库表中的2次查询

mysql - 按标签获取相关帖子

mysql - Node.js 4.2.2 中与 mysql 实时数据的握手问题

php - 相当于 Yii2 中的 "Yii::app()->controller->renderPartial"?

mysql - COUNT(*) 中不遵守 LEFT JOIN 条件

php - MySQL - 写入不同的服务器

mysql - SQL存储过程和位运算符

php - MySQL 连接无法在 AWS EC2 上运行

php - 在 Alamofire 中快速发送参数

php - IMAP 通过 PHP :/ssl and/tls choose different TLS version