本文实例讲述了Laravel5.1 框架数据库操作DB运行原生SQL的方法。分享给大家供大家参考,具体如下:
Laravel操作数据库有三种:DB原生SQL、构建器、Model。这三种依情况而决定使用哪种更合适。
那么今儿咱就从DB原生SQL说起:
1 用DB门面原生SQL语句操作
用DB门面操作的话呢 无非就是:insert、select、update、delete 另外附加一个statement(通用语句 比如drop之类的)。
1.1 insert
?
1
2
3
4
|
public function getInsert()
{
DB::insert( 'INSERT INTO articles (title, body)VALUE(?, ?)' , [ 'learn laravel' , 'balablalabalabla' ]);
}
|
insert方法接受两个参数 第一个参数呢 就是原生的SQL语句,第二个参数是一个数组 对应的sql语句中的?
1.2 select
?
1
2
3
4
5
6
7
8
|
public function getArticles(){
$articles = DB::select( 'SELECT * FROM articles WHERE id="codetool">
我们的占位符不仅仅是? 也可以用":name" 来表示,对应的数组就是一对儿一对儿的键值。
1.3 update
?
1
2
3
4
5
|
public function getUpdate()
{
$affected = DB::update( 'UPDATE articles SET id="codetool">
update方法还返回了一个affected 这是受到影响的总行数。
1.4 delete
?
1
2
3
4
5
|
public function getDelete()
{
$affected = DB:: delete ( 'DELETE FROM articles WHERE id=:id' , [ 'id' => 2]);
echo $affected ;
}
|
1.5 statement
?
1
2
3
4
|
public function getDrop()
{
DB::statement( 'DROP TABLE articles' );
}
|
2 监听查询
我们可以用 listen方法 监听每一次操作数据库动作,这样我们就可以用于 记录日志啊 调试啊什么的:
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
class AppServiceProvider extends ServiceProvider
{
public function boot()
{
DB::listen( function ( $sql , $bindings , $time ){
});
}
public function register()
{
}
}
|
希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。
原文链接:https://www.cnblogs.com/sun-kang/p/7465555.html
-
PHP教程
这篇文章主要介绍了php json相关函数用法,列举了json_encode、json_decode及json_last_error的功能,并实例分析了json_encode与json_decode函数的具体使用技巧,需要的朋友可...
4612021-05-06
-
PHP教程
这篇文章主要介绍了PHP中一些可以替代正则表达式函数的字符串操作函数,本文总结的是一些比较特别的字符串操作函数,需要的朋友可以参考下...
3802020-08-12
-
PHP教程
这篇文章主要介绍了php配合jquery实现增删操作具体实例,有需要的朋友可以参考一下
...
2242020-06-01
-
PHP教程
这篇文章主要介绍了PHP strcmp()和strcasecmp()的区别实例的相关资料,需要的朋友可以参考下...
11322021-03-19
-
PHP教程
这篇文章主要介绍了php使用filter_var函数判断邮箱,url,ip格式,简单分析了php filter_var函数的功能、参数,并结合实例形式给出了filter_var函数判断邮箱,url,ip格...
7372021-08-08
-
PHP教程
这篇文章主要介绍了php rsa 加密,解密,签名,验签详解的相关资料,需要的朋友可以参考下...
8492021-04-04
-
PHP教程
在做项目的过程中,我们经常需要用到过滤一些html标签来实现提高数据的安全性,其实就是删除那些对应用程序有潜在危害的数据。它用于去除标签以及删...
4862020-09-25
-
PHP教程
这篇文章主要介绍了CodeIgniter针对lighttpd服务器URL重写的方法,涉及lighttpd服务器配置及URL配置规则的相关技巧,需要的朋友可以参考下...
3252020-09-28
|
|