tp5中使用原生sql查询总结

注意事项:
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);
    原文作者:jew丶
    原文地址: https://www.jianshu.com/p/7d8a91095eca
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞