suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Wie exportiere ich Teilzeilen einer MySQL-Tabelle aus der WHERE-Klausel?

Wie exportiere ich bestimmte Zeilen einer MySQL-Tabelle mithilfe der Where-Klausel aus dem PHP-Skript?

Ich habe einen MySQL-Say-Test und möchte ein PHP-Skript verwenden, um eine importierbare .sql-Datei für Zeilen mit IDs zwischen 10 und 100 zu erstellen.

Ich möchte eine SQL-Datei test.sql erstellen, die in die MySQL-Datenbank importiert werden kann.

Mein Code:

$con=mysqli_connect("localhost", "root","","mydatabase");

$tableName  = 'test';
$backupFile = '/opt/lampp/htdocs/practices/phpTest/test.sql';
$query      = "SELECT * INTO OUTFILE '$backupFile' FROM $tableName WHERE id BETWEEN 10 AND 500";

$result = mysqli_query($con,$query);

Dadurch wird eine test.sql-Datei erstellt, aber wenn ich versuche, sie zu importieren, wird der Fehler Nr. 1064 angezeigt.

Mein Skript erstellt lediglich eine Datei mit Zeilen, die Spaltennamen und Tabellenstruktur enthalten, oder fügt eine Abfrage ein.

P粉054616867P粉054616867403 Tage vor670

Antworte allen(2)Ich werde antworten

  • P粉277305212

    P粉2773052122023-10-22 11:09:44

    以非常简单的方式转到您的 phpMyAdmin 选择要导出其特定行的数据库 单击“SQL”(在数据库上运行 SQL 查询) 编写sql查询并执行 就像 select * from test table limit 500 现在结果会怎样 就在底部看到“查询结果操作” 只需点击导出

    全部完成:-)

    Antwort
    0
  • P粉676821490

    P粉6768214902023-10-22 10:31:41

    正如评论中提到的,您可以通过以下方式使用 mysqldump。

    mysqldump --user=... --password=... --host=... DB_NAME --where=<YOUR CLAUSE> > /path/to/output/file.sql

    如果你希望它出现在你的 php 文件中,你可以执行以下操作

    exec('mysqldump --user=... --password=... --host=... DB_NAME --where=<YOUR CLAUSE> > /path/to/output/file.sql');

    Antwort
    0
  • StornierenAntwort