注意事项:

1.先在database.php中配置好数据库

2.只要是数据库操作必须引用 use/think/Db;严格区分大小写。

下面是方法:

 public function hello5()
{
//所有查询必须 use/think/Db;
/* 1 配置数据库
* 2 使用DB 命名空间
*
*/ /****************tp5中使用原生语句*******************/
//query 用于查询 其他的用execute // 插入记录
// $result = Db::execute('insert into sb_ad (ad_name, ad_content ,status) values (1, "456",1)');
// dump($result);
// 更新记录
// $result = Db::execute('update sb_ad set ad_name = "framework" where ad_id = 1 ');
// dump($result);
// 查询数据
// $result = Db::query('select * from sb_ad where ad_id = 1');
// print_r($result);
// 删除数据
// $result = Db::execute('delete from sb_ad where ad_id = 2 ');
// dump($result);
//其它操作
// 显示数据库列表
// $result = Db::query('show tables from tpshop1');
// print_r($result);
// 清空数据表
// $result = Db::execute('TRUNCATE table sb_ad');
// dump($result); /**************多个数据库操作************/
//在application/config.php中加入配置
//例子:
/*
* // 数据库配置1
'db2' => [
// 数据库类型
'type' => 'mysql',
// 服务器地址
'hostname' => '127.0.0.1',
// 数据库名
'database' => 'tpshop2',
// 数据库用户名
'username' => 'root',
// 数据库密码
'password' => '',
// 数据库连接端口
'hostport' => '',
// 数据库连接参数
'params' => [],
// 数据库编码默认采用utf8
'charset' => 'utf8',
// 数据库表前缀
'prefix' => 'tp_',
],
依次类推
*/
//connect为链接数据库
// $result = Db::connect('db2')->query('select * from sb_ad where ad_id = 1');
// print_r($result); // $result = Db::connect('db3')->query('select * from sb_ad where ad_id = 1');
// print_r($result); // $db1 = Db::connect('db1');获取数据库对象
// $db2 = Db::connect('db2');获取数据库对象然后再操作
// $db1->query('select * from sb_ad where ad_id = 1');
// $db2->query('select * from sb_ad where ad_id = 1'); /*****参数绑定******/
// Db::execute('insert into sb_ad (ad_name, ad_content ,status) values (?, ?, ?)', [3, 'thinkphp', 1]);
// $result = Db::query('select * from sb_ad where ad_id = ?', [3]);
// print_r($result);
/******命名占位符绑定*****/
// Db::execute('insert into sb_ad (ad_name, ad_content ,status) values (:ad_name, :ad_content, :status)', ['ad_name' => 11, 'ad_content' => 'thinkphp', 'status' => 1]);
// $result = Db::query('select * from sb_ad where ad_id=:id', ['id' => 10]);
// print_r($result);

原文链接:https://www.jianshu.com/p/7d8a91095eca

tp5中使用原生sql查询总结【转】的更多相关文章

  1. Hibernate5.2之原生SQL查询

    Hibernate5.2之原生SQL查询 一. 介绍  在上一篇博客中笔者通过代码的形式给各位读者介绍了Hibernate中最重要的检索方式--HQL查询.在本博文中笔者将向各位读者介绍Hiberna ...

  2. Hibernate原生SQL查询

    最近在做一个较为复杂的查询,hibernate基本的查询不能满足,只好使用其提供的原生sql查询.参考网上的一些资料,做一些总结. 对原生SQL查询执行的控制是通过SQLQuery接口进行的,通过执行 ...

  3. Hibernate原生SQL查询多表关联,SQL语句要注意的问题

    Hibernate原生SQL查询多表关联,SQL语句要注意的问题 @for&ever 2009-9-4 系统环境: MySQL5.1 Hibernate3.3 有如下的假定: 实体类 Ques ...

  4. hibernate使用原生SQL查询返回结果集的处理

    今天没事的时候,看到公司框架里有一个用原生SQL写的函数,说实在以前自己也干过这事,但好久都没有用,都忘得差不多了,现在基本都是用的hql语句来查询结果.hibernate中使用createSQLQu ...

  5. django中使用原生sql

    在Django中使用原生Sql主要有以下几种方式: 一:extra:结果集修改器,一种提供额外查询参数的机制 二:raw:执行原始sql并返回模型实例 三:直接执行自定义Sql ( 这种方式完全不依赖 ...

  6. JavaEE(18) - JPA原生SQL查询和存储过程

    1. 使用原生SQL执行查询 2. 映射原生SQL查询的结果集 3. 使用原生SQL查询执行实体查询 4. 命名原生SQL查询 5. 在JPQL查询中调用存储过程

  7. Hibernate SQLQuery 原生SQL 查询及返回结果集处理-1

    第一篇:官方文档的处理方法,摘自官方 在迁移原先用JDBC/SQL实现的系统,难免需要采用hibernat native sql支持. 1.使用SQLQuery hibernate对原生SQL查询执行 ...

  8. Hibernate 的原生 SQL 查询

    Hibernate除了支持HQL查询外,还支持原生SQL查询.         对原生SQL查询执行的控制是通过SQLQuery接口进行的,通过执行Session.createSQLQuery()获取 ...

  9. 使用hibernate原生sql查询,结果集全为1的问题解决

    问题如下: String sqlTest ="select summary,summaryno from F_Summary"; List<Map<Object, Ob ...

随机推荐

  1. Nginx的负载均衡算法、lvs的负载均衡算法

    NGINX: 官方默认的算法: RR:轮询 weight:权重 ip_hash:配置此项后weight项失效 第三方模块: fair:根据后端服务器的繁忙程度 url_hash:如果客户端访问的url ...

  2. 用maven运行指定java类main方法

    mvn exec:java -Dexec.mainClass="com.java2s.ide.App"

  3. react界面跳转,滚动到顶部

    在使用react-router-dom时,我们经常会遇到路由切换时滚动到浏览器顶部的问题. 滚动到顶部 Scroll to top 很多时候我们需要的是滚动到顶部“Scroll to top”,因为发 ...

  4. Fink| API| Time与Window

    1. Flink 批处理Api 1.1 Source Flink+kafka是如何实现exactly-once语义的 Flink通过checkpoint来保存数据是否处理完成的状态: 有JobMana ...

  5. celery分布式任务队列的使用

    一.Celery介绍和基本使用 Celery 是一个 基于python开发的分布式异步消息任务队列,通过它可以轻松的实现任务的异步处理, 如果你的业务场景中需要用到异步任务,就可以考虑使用celery ...

  6. [LOJ 2134][UOJ 132][BZOJ 4200][NOI 2015]小园丁与老司机

    [LOJ 2134][UOJ 132][BZOJ 4200][NOI 2015]小园丁与老司机 题意 给定平面上的 \(n\) 个整点 \((x_i,y_i)\), 一共有两个问题. 第一个问题是从原 ...

  7. SuperSocket 2.0 发布第一个预览版, 另寻找Yang Fan哥哥

    昨天,SuperSocket的作者发布了2.0版本的第一个预览版.SuperSocket 2.0 是一个经过全新设计的,第一个完全基于.NET Core的版本.作者正在积极尝试提供更简单易用的API的 ...

  8. mysql-新增数据库

    一.新增数据库 1.检查mysql 新增数据库之前,先检查是否安装了数据库,本次我们使用的是mysql数据库,检查是否安装mysql直接使用 mysql --version即可: 显示了mysql的版 ...

  9. Kubernetes容器集群管理环境 - 完整部署(下篇)

    在前一篇文章中详细介绍了Kubernetes容器集群管理环境 - 完整部署(中篇),这里继续记录下Kubernetes集群插件等部署过程: 十一.Kubernetes集群插件 插件是Kubernete ...

  10. CodeForces 463D DP

    Gargari got bored to play with the bishops and now, after solving the problem about them, he is tryi ...