国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ThinkPHP6之?dāng)?shù)據(jù)庫操作上

這篇具有很好參考價(jià)值的文章主要介紹了ThinkPHP6之?dāng)?shù)據(jù)庫操作上。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。


前言

注意,tp6在進(jìn)行語法學(xué)習(xí)的時(shí)候都是在app/index.php中寫代碼的,代碼寫在index函數(shù)下面,而且tp6自帶的文件都是由自動(dòng)加載器的,不需要包含autoload.php文件


1. 數(shù)據(jù)庫配置

要對(duì)數(shù)據(jù)庫進(jìn)行操作,要修改兩個(gè)地方,一個(gè)數(shù).env文件,一個(gè)是config/database.php文件

  • config/database.php
 'connections'     => [
        'mysql' => [  // 代表連接的一個(gè)數(shù)據(jù)庫
            // 數(shù)據(jù)庫類型
            'type'            => env('database.type', 'mysql'),
            // 服務(wù)器地址
            'hostname'        => env('database.hostname', '127.0.0.1'),
            // 數(shù)據(jù)庫名
            'database'        => env('database.database', 'cr'),
            // 用戶名
            'username'        => env('database.username', 'root'),
            // 密碼
            'password'        => env('database.password', '901026'),
            // 端口
            'hostport'        => env('database.hostport', '3306'),
            // 數(shù)據(jù)庫連接參數(shù)
            'params'          => [],
            // 數(shù)據(jù)庫編碼默認(rèn)采用utf8
            'charset'         => env('database.charset', 'utf8'),
            // 數(shù)據(jù)庫表前綴   配置后只有寫數(shù)據(jù)庫后面
            'prefix'          => env('database.prefix', ''),

            // 數(shù)據(jù)庫部署方式:0 集中式(單一服務(wù)器),1 分布式(主從服務(wù)器)
            'deploy'          => 0,
            // 數(shù)據(jù)庫讀寫是否分離 主從式有效
            'rw_separate'     => false,
            // 讀寫分離后 主服務(wù)器數(shù)量
            'master_num'      => 1,
            // 指定從服務(wù)器序號(hào)
            'slave_no'        => '',
            // 是否嚴(yán)格檢查字段是否存在
            'fields_strict'   => true,
            // 是否需要斷線重連
            'break_reconnect' => false,
            // 監(jiān)聽SQL
            'trigger_sql'     => env('app_debug', true),
            // 開啟字段緩存
            'fields_cache'    => false,
        ],
    ],

ThinkPHP6之?dāng)?shù)據(jù)庫操作上

connections里面的一個(gè)子元素代表連接的一個(gè)數(shù)據(jù)庫,要使用多個(gè)數(shù)據(jù)庫,要添加多個(gè)數(shù)據(jù)庫對(duì)象,寫prefix之后就只需要寫數(shù)據(jù)表后面的字段了

  • config/env
[DATABASE]
TYPE = mysql
HOSTNAME = 127.0.0.1
DATABASE = cr
USERNAME = root
PASSWORD = 901026
HOSTPORT = 3306
CHARSET = utf8
DEBUG = true

ThinkPHP6之?dāng)?shù)據(jù)庫操作上

注意和config/database.php對(duì)應(yīng)上就可以了

2. 數(shù)據(jù)庫操作

創(chuàng)建數(shù)據(jù)庫

create database cr;
use cr;
insert into phpcn_user values (1, '歐陽克'),(2, '朱'),(3,'asd'),(4,'asde'),(5,'rts');

在寫操作數(shù)據(jù)庫語句之前寫use think\facade\Db;

1. 查詢操作
  1. find():通過主鍵查找,find方法查詢結(jié)果不存在,返回 null,否則返回結(jié)果數(shù)組

  2. where():查詢的條件

  3. field(), column():查詢某一列數(shù)據(jù)

  4. value() :通過值查找,查詢某段的值

如上都是查詢一條數(shù)據(jù),一列數(shù)據(jù),或者是一個(gè)數(shù)據(jù)

  1. select() :查詢好多條數(shù)據(jù),和toArray()一起使用
        $result = Db::table('phpcn_user')->column('id');
        printf('<pre>%s</pre>',print_r($result,true));
        $result = Db::table('phpcn_user')->where('id','>','2')->value('name');
        printf('<pre>%s</pre>', print_r($result, true));
        $result = Db::table('phpcn_user')->where('id', '3')->value('name');
        printf('<pre>%s</pre>', print_r($result, true));

        print('-----------------');
        $result = Db::table('phpcn_user')->where('id','>=','2')->select()->toArray();
        printf('<pre>%s</pre>', print_r($result, true));
2. 插入操作
  1. insert($data) $data為關(guān)聯(lián)數(shù)組,通常通過
  2. insertAll($data) :添加多條數(shù)據(jù)
  3. insertGetId($data) :添加數(shù)據(jù)并且獲取添加數(shù)據(jù)的主鍵
        $data = ['id'=>11,'name'=>'zxasdc'];
        $result = DB::table('phpcn_user')->insert($data);
        echo $result;
        $data = ['id'=>11,'name'=>'zxasdc'];
        $result = DB::table('phpcn_user')->insertGetId($data);
        echo $result;
        $data = [
            [
                'id'=>7,
                'name'=>'dfg'
            ],
            [
                'id' => 8,
                'name' => 'df8g'
            ]
            ];
        $result = DB::table('phpcn_user')->insertAll($data);
        echo $result;

插入操作,插入的都是關(guān)聯(lián)數(shù)組

3. 修改
  1. update(修改后的值) + where(修改哪一個(gè))
  2. updata($data) $data為關(guān)聯(lián)數(shù)組
  3. inc():自增 dec():自減
 $result = Db::table('phpcn_user')->where('id',3)->update(['name'=>'ykk']);
4. 刪除
  1. delete()
  2. useSoftDelete()
$result = Db::table('phpcn_user')->where('id',5)->delete();
5. 其他
  1. save($data) : $data是關(guān)聯(lián)數(shù)組,save方法統(tǒng)一寫入數(shù)據(jù),自動(dòng)判斷是新增還是更新數(shù)據(jù)(以寫入數(shù)據(jù)中是否存在主鍵數(shù)據(jù)為依據(jù))
  2. query() :方法用于執(zhí)行 MySql 查詢操作
  3. execute() : 方法用于執(zhí)行 MySql 新增和修改操作

2和3都是直接操作數(shù)據(jù)庫的

        $result = Db::query("select * from `phpcn_user` where `id` > 3");
        print_r($result);
        $result = Db::execute("insert into `phpcn_user` values (11, 'asd')");
        print_r($result);

3.數(shù)據(jù)集

  1. toArray()
  2. isEmpty()

總結(jié)

數(shù)據(jù)庫操作前一定要加上 use think\facade\Db;文章來源地址http://www.zghlxwxcb.cn/news/detail-427602.html

到了這里,關(guān)于ThinkPHP6之?dāng)?shù)據(jù)庫操作上的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • thinkphp學(xué)習(xí)06-連接數(shù)據(jù)庫與模型初探

    thinkphp學(xué)習(xí)06-連接數(shù)據(jù)庫與模型初探

    插入數(shù)據(jù) 修改.env數(shù)據(jù)庫配置 測(cè)試環(huán)境下是可以使用的,但是到了線上建議配置到config下database.php 可以通過刪除改變.env 的配置,或刪除.env 來驗(yàn)證 database 的執(zhí)行優(yōu)先級(jí),經(jīng)過驗(yàn)證可知:.envdatabase.php 新建DataTest.php connections 配置數(shù)據(jù)庫連接信息,可以是多個(gè)數(shù)據(jù)庫,便于切換,

    2024年01月16日
    瀏覽(26)
  • thinkphp5框架的model支持多地區(qū)數(shù)據(jù)庫切換

    一般情況下,都是在model中指定一個(gè)數(shù)據(jù)庫連接參數(shù)即可。但某些情況下,相同的庫表會(huì)在不同地區(qū)都有部署,這個(gè)時(shí)候需要按地區(qū)進(jìn)行切換(只有一個(gè)model情況下)。 Model層代碼 使用A地區(qū)的數(shù)據(jù)庫: $model = new A(); 使用B地區(qū)的數(shù)據(jù)庫: $model = new B(); 需要更改地方:config.ph

    2024年02月12日
    瀏覽(23)
  • thinkphp:數(shù)據(jù)庫查詢,嵌套別的表的查詢(別的表做子查詢)

    從? vendors ?表中選擇記錄。 在? vendors ?表中,篩選出具有滿足以下條件的? vendor_code ?值: 對(duì)應(yīng)的采購訂單(在? po_headers_all ?表中)存在未完全接收的采購行(在? po_lines_all ?表中)。 相應(yīng)的采購訂單狀態(tài)為 \\\"已簽核\\\"。 采購行的數(shù)量大于已接收數(shù)量。 查詢結(jié)果按照? v

    2024年02月10日
    瀏覽(16)
  • 【ThinkPHP6系列學(xué)習(xí)-1】下載并部署ThinkPHP6

    【ThinkPHP6系列學(xué)習(xí)-1】下載并部署ThinkPHP6

    在指定目錄(www目錄)下打開cmd,使用composer下載thinkphp6,命令后面的thinkphp6就是下載的目錄名,可以隨意修改。 下載后,查看目錄結(jié)構(gòu),tp6的目錄結(jié)構(gòu)和tp5不同,默認(rèn)是單應(yīng)用(只有一個(gè)模塊),如果需要多應(yīng)用,需要開啟多應(yīng)用模式,后面文章再講。 主要用到的目錄有

    2024年02月05日
    瀏覽(35)
  • thinkphp6 入門教程合集(更新中) thinkphp6 入門(1)--安裝、路由規(guī)則、多應(yīng)用模式

    thinkphp6 入門(1)--安裝、路由規(guī)則、多應(yīng)用模式_軟件工程小施同學(xué)的博客-CSDN博客 thinkphp6 入門(2)--視圖、渲染html頁面、賦值_軟件工程小施同學(xué)的博客-CSDN博客 thinkphp6 入門(3)--獲取GET、POST請(qǐng)求的參數(shù)值_thinkphp獲取get傳值_軟件工程小施同學(xué)的博客-CSDN博客 thinkphp6 入門(

    2024年02月09日
    瀏覽(52)
  • 數(shù)據(jù)庫內(nèi)日期類型數(shù)據(jù)大于小于條件查找注意事項(xiàng)

    數(shù)據(jù)庫內(nèi)日期類型數(shù)據(jù)大于小于條件查找注意事項(xiàng)

    只傳date格式的日期取查datetime的字段的話默認(rèn)是 00:00:00 日期類型字符串需要使用 ’ ’ 單引號(hào)括住 使用大于小于條件查詢某一天的日期數(shù)據(jù) 前后判斷條件不能是同一天 一個(gè)例子 數(shù)據(jù)庫內(nèi)數(shù)據(jù): 查詢2023-08-14之后的數(shù)據(jù): 查詢2023-08-14之前的數(shù)據(jù): 查詢2023-08-14一天內(nèi)的數(shù)據(jù)

    2024年02月12日
    瀏覽(18)
  • thinkphp6和thinkphp5有什么區(qū)別

    Thinkphp6.0完全開發(fā)手冊(cè) 采用PHP7強(qiáng)類型(嚴(yán)格模式) tp5 環(huán)境要求PHP = 5.4.0 ThinkPHP6.0的環(huán)境要求 PHP = 7.2.5 6.0版本開始,必須通過Composer方式安裝和更新,所以你無法通過Git下載安裝。 支持更多的PSR規(guī)范 V6.0.10版本開始 支持 psr7 response 多應(yīng)用支持 tp5默認(rèn)使用多應(yīng)用模式部署 tp6 安

    2024年02月06日
    瀏覽(21)
  • thinkPHP6接入workman

    thinkPHP6接入workman

    上篇介紹了workman實(shí)現(xiàn)websocket功能(鏈接:https://blog.csdn.net/weixin_38155824/article/details/128952037) 后傳:解決workman部署到Linux環(huán)境無法啟動(dòng)和連接的問題(https://blog.csdn.net/weixin_38155824/article/details/129004050) 這篇就介紹如何在thinkPHP6項(xiàng)目中接入workman。 查看TP6手冊(cè):命令行=自定義命

    2024年02月15日
    瀏覽(34)
  • thinkphp6-配置設(shè)置與獲取,Thinkphp6自定義配置文件以及調(diào)用(config文件夾下的配置)

    thinkphp6-配置設(shè)置與獲取,Thinkphp6自定義配置文件以及調(diào)用(config文件夾下的配置)

    環(huán)境變量 設(shè)置環(huán)境變量 /.env [DATABASE] USERNAME = root PASSWORD = 123456 獲取環(huán)境變量 app/controller/Index.php 訪問測(cè)試 http://codeit.org.cn/index {“username”:“root”,“password”:“123456”} 1.在thinkphpconfig下新建一個(gè)test.php配置文件 .test.php文件內(nèi)容 調(diào)用test.php配置文件 配置 配置設(shè)置 config/app.

    2024年02月13日
    瀏覽(35)
  • ThinkPHP6中使用GatewayWorker

    首先是先安裝 下載demo 服務(wù)器開通TCP端口 8282 、 1238 將 ApplicationsYourApp 目錄隨便放ThinkPHP6的哪個(gè)位置,我這里放在了 appgatewayws 目錄中 配置 composer.json 保存后執(zhí)行 composer dumpautoload 更新 將 Events.php 、 start_businessworker.php 、 start_gateway.php 和 start_register.php 文件中的 require_once

    2024年02月22日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包