laravel ORM怎么打印出执行sql语句

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了laravel ORM怎么打印出执行sql语句相关的知识,希望对你有一定的参考价值。

    laravel ORM怎么打印出执行sql语句。

    QueryBuilder类中有toSql方法可以获取sql语句的。

    $sql = UserModel::query()->where('username','admin')->toSql();

    dd($sql);  //select * from user_table where username = 'admin'

ORM是将关系型数据抽象为对象,优点和缺点同样多,它能更好的管理你的数据间关系,但是再高并发下,很多需要数据库原子性的操作,ORM就不能很好的胜任。

参考技术A QueryBuilder类中有toSql()方法可以获取sql语句的

比如:
$sql = UserModel::query()->where('username','admin')->toSql();
dd($sql); //select * from user_table where username = 'admin'

6.让ORM映射执行的时候打印SQL语句

配置Django日志:\\hello_django\\hello_django\\settings.py 文件中的 LOGGING 

 

加入如下配置:

LOGGING = {
  \'version\': 1,
  \'disable_existing_loggers\': False,
  \'handlers\': {
    \'console\':{
      \'level\':\'DEBUG\',
      \'class\':\'logging.StreamHandler\',
    },
  },
  \'loggers\': {
    \'django.db.backends\': {
      \'handlers\': [\'console\'],
      \'propagate\': True,
      \'level\':\'DEBUG\',
    },
  }
}

 

 

以上是关于laravel ORM怎么打印出执行sql语句的主要内容,如果未能解决你的问题,请参考以下文章

Laravel打印执行的SQL语句

Laravel打印执行的SQL语句

6.让ORM映射执行的时候打印SQL语句

关于laravel一些学习小知识

Laravel 打印SQL语句

神奇的双下划线查询