【发布时间】:2018-05-03 19:47:33
【问题描述】:
如何在 laravel 5.5 中使用原始数据库字符串创建一个新表?
$createTableSqlString =
"CREATE TABLE $newTableName (
product_id INT(11) NOT NULL AUTO_INCREMENT,
...
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=1;";
我知道有一个 Illuminate\Support\Facades\Schema 用于制作新表,
Schema::connection('mysqlInvsys')->create(...);
但是我应该如何定义或给它原始字符串 DB::raw($createTableSqlString) ?我在official doc 中没有找到任何示例。
【问题讨论】:
-
为什么不使用专为此设计的内置migrations?
-
因为我必须使用另一个 mysql db 也被其他(不是 laravel)网站使用,所以我必须使它成为“旧”的原始方式。
标签: php mysql laravel laravel-5 laravel-5.5