Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Mengautomasikan Populasi Pangkalan Data MySQL daripada Aplikasi PHP Menggunakan Fail SQL?

Bagaimanakah Saya Boleh Mengautomasikan Populasi Pangkalan Data MySQL daripada Aplikasi PHP Menggunakan Fail SQL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-09 20:24:25285semak imbas

How Can I Automate MySQL Database Population from a PHP Application Using SQL Files?

Melaksanakan MySQL *.sql Files dalam PHP

Cabaran: Mengautomasikan penjanaan tapak dengan menjalankan dua *.sql fail (membuat jadual dan mengisi rekod ) dari dalam PHP aplikasi.

Penyelesaian:

Sambil melaksanakan terus skrip .sql dalam PHP mempunyai had, menggunakan alat MySQL melalui PHP ialah penyelesaian yang berkesan.

Menggunakan shell_exec():

Satu pendekatan ialah menggunakan shell_exec() untuk melaksanakan arahan MySQL.

$command = 'mysql'
        . ' --host=' . $vals['db_host']
        . ' --user=' . $vals['db_user']
        . ' --password=' . $vals['db_pass']
        . ' --database=' . $vals['db_name']
        . ' --execute="SOURCE ' . $script_path;
$output1 = shell_exec($command . '/site_db.sql"');
$output2 = shell_exec($command . '/site_structure.sql"');

Menggunakan --option=value Format:

Untuk meningkatkan kestabilan, gunakan format --option=value dan --execute="SOURCE ..." untuk melaksanakan fail:

$command = "mysql --user={$vals['db_user']} --password='{$vals['db_pass']}' "
 . "-h {$vals['db_host']} -D {$vals['db_name']} < {$script_path}";
$output = shell_exec($command . '/shellexec.sql');

Tambahan Nota:

  • exec() dan shell_exec() mempunyai perbezaan yang ketara.
  • Kes tepi wujud apabila penyataan skrip .sql tidak boleh dilaksanakan secara langsung sebagai SQL.
  • Menyebut MySQL daripada PHP ialah cara yang boleh dipercayai untuk mengendalikan fail .sql.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengautomasikan Populasi Pangkalan Data MySQL daripada Aplikasi PHP Menggunakan Fail SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn