【问题标题】:Laravel DB statement - Create database not workingLaravel DB 语句 - 创建数据库不起作用
【发布时间】:2018-07-25 09:45:02
【问题描述】:

我想在运行时用 laravel 创建一个新数据库。

我已经尝试过了

$v_db_name = "db_new";
$strSql = "CREATE DATABASE ".$v_db_name;
DB::statement($strSql);

它没有显示任何错误我检查了laravel日志什么都没有。

但我尝试使用相同的代码来创建新表,然后它正在工作,但创建新数据库不起作用。

【问题讨论】:

  • 可能你没有权限。
  • @ADyson 我在本地工作,如果没有权限,我该如何设置?
  • 以 root 身份登录 MySQL(或其他具有足够权限的帐户,可以将权限分配给其他人)并从那里设置权限。我不知道您是否使用 MySQL Workbench 或其他工具来管理您的 MySQL,但请使用适合您的任何工具
  • 但这只是一个猜测。我很惊讶根本没有错误或异常。你确定你没有抑制 PHP 或其他东西中的错误吗?
  • 你是如何检查数据库没有被创建的?如果您已签入数据库客户端,请记得刷新顶部视图以查看新创建的数据库

标签: php mysql database laravel


【解决方案1】:

试着用这个代替你的陈述:

DB::getConnection()->statement("CREATE DATABASE ".$v_db_name, array('schema' => $v_db_name));

【讨论】:

  • 如果您阅读了评论,那么您会发现我已经得到了答案谢谢
【解决方案2】:

试试 $strSql = "创建数据库".$v_db_name; DB::raw($strSql);

【讨论】:

  • 如果您阅读了评论,那么您发现我已经得到了答案谢谢
猜你喜欢
  • 2020-04-25
  • 2013-03-15
  • 2020-12-28
  • 2012-10-29
  • 1970-01-01
  • 2016-09-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多