php - Laravel 使用原始字符串创建表

标签 php mysql laravel laravel-5 laravel-5.5

如何在 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 中找到任何示例.

最佳答案

Laravel 提供了运行原始 SQL 查询的函数,如图所示 here .

对于表的创建,可以使用DB::statement($createTableSqlString)

关于php - Laravel 使用原始字符串创建表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50154249/

相关文章:

php - XML 中的项目符号 "•"

php - 如何在 mysql 中重新格式化日期时间?

Mysql WHERE 逗号分隔列表问题

php - mysql_num_rows();和标题();给出重定向循环

laravel - 用户类型的邻接列表模型

带有 native mysql 驱动程序 ( mysqlnd ) 的 php pdo - 获取保留 native 列类型的数据

php - MYSQL - 文件名的字段类型?

MySQL:从具有 IP 范围的表中选择 IP

php - 表单验证不在 laravel 上显示结果

php - Laravel:如何在 maatwebsite DOMPDF 导出中更改 PDF 样式?