首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP和Mysql多次更新- allowMultiQueries等效

PHP和Mysql多次更新- allowMultiQueries等效
EN

Stack Overflow用户
提问于 2014-03-27 19:57:30
回答 1查看 142关注 0票数 0

我刚刚开始使用Laravel,我想知道是否存在与我将在java中使用的allowMultiQueries连接字符串参数相当的参数。

是否有办法在同一个调用中执行多个更新,还是必须连续进行?

代码语言:javascript
复制
DB::update('DROP TABLE IF EXISTS tablename; CREATE TABLE tablename(...);');

而不是

代码语言:javascript
复制
DB::update('DROP TABLE IF EXISTS tablename;'); 
DB::update('CREATE TABLE tablename(...);');
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-28 03:25:22

您可以像这样使用模式生成器熟练地使用Laravel方法来完成它。

代码语言:javascript
复制
use Illuminate\Database\Schema\Blueprint;

...

if (Schema::hasTable('tablename')) {
    Schema::drop('tablename');
}
Schema::create('tablename', function(Blueprint $table) {
    $table->increments('id');
    $table->string('name', 64);
    $table->timestamps();
    $table->index('name');
});

但是,如果出于某种原因要执行原始查询,则可以在unprepared()中使用查询生成器方法。

代码语言:javascript
复制
DB::unprepared('DROP TABLE IF EXISTS tablename; CREATE TABLE tablename (id INT ...)');    

但至少要确保你使用的是正确的语法

代码语言:javascript
复制
DROP TABLE IF EXISTS tablename
           ^^^^^^^^^

而不是

代码语言:javascript
复制
DROP TABLE tablename IF EXISTS
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22697922

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档