在解决了在 php 中使用 shell_script 创建数据库的问题后,请参阅此帖子 link ,我试图在同一个 shell_exec 命令中创建表。
我有这些行:
$sql="CREATE DATABASE IF NOT EXISTS dbtest; use dbtest; CREATE TABLE MyGuests (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
) ";
shell_exec("mysql -uroot -pmypasswrd -e \"$sql\" ");
这段代码只创建数据库,不创建表。我的问题是如何使用 shell_exec() 完成这个任务?是否可以使用 shell_exec() 运行来自 mysqldump 的 sql 语句?
最佳答案
This code only creates the database, but not creates the table. My question is how accomplish this task using shell_exec()?
对于您的问题,我能找到的唯一解决方案是将整个 SQL 查询写在一行中(不要将其分成几行)。它会影响您的代码的可读性,但您的表将被创建。
关于php - 如何在 PHP 中使用 shell_script 创建数据库后创建表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31103916/