欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

tp5中使用原生sql查询总结【转】

程序员文章站 2022-05-10 09:40:57
注意事项: 1.先在database.php中配置好数据库 2.只要是数据库操作必须引用 use/think/Db;严格区分大小写。 下面是方法: 原文链接: "https://www.jianshu.com/p/7d8a91095eca" ......

注意事项:
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);

原文链接: