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

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

這篇具有很好參考價(jià)值的文章主要介紹了thinkphp學(xué)習(xí)06-連接數(shù)據(jù)庫與模型初探。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

新建數(shù)據(jù)庫

CREATE DATABASE `tp6stu01` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_bin';

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

DROP TABLE IF EXISTS `tp_user`;
CREATE TABLE `tp_user`  (
  `id` mediumint(8) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '自動編號',
  `username` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
  `password` char(40) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
  `gender` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '男',
  `email` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `price` decimal(8, 2) UNSIGNED NOT NULL DEFAULT 0.00,
  `details` text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
  `uid` smallint(6) NULL DEFAULT NULL,
  `status` tinyint(3) NOT NULL DEFAULT 0 COMMENT '狀態(tài)',
  `list` json NULL,
  `delete_time` datetime(0) NULL DEFAULT NULL,
  `create_time` datetime(0) NOT NULL DEFAULT '1997-01-01 01:01:01' COMMENT '創(chuàng)建時(shí)間',
  `update_time` datetime(0) NOT NULL DEFAULT '1997-01-01 01:01:01' COMMENT '修改時(shí)間',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 302 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

插入數(shù)據(jù)

INSERT INTO `tp_user` VALUES (1, '蠟筆小新', '123', '男', 'xiaoxin@163.com', 60.00, '123', 1001, -1, NULL, NULL, '2016-06-27 16:45:26', '1997-01-01 01:01:01');
INSERT INTO `tp_user` VALUES (2, '路飛', '123', '男', 'lufei@163.com', 70.00, '123', 1002, 0, NULL, NULL, '2016-06-27 16:55:56', '1997-01-01 01:01:01');
INSERT INTO `tp_user` VALUES (3, '黑崎一護(hù)', '456', '男', 'yihu@163.com', 80.00, '123', 1003, 1, NULL, NULL, '2016-07-27 17:22:16', '1997-01-01 01:01:01');
INSERT INTO `tp_user` VALUES (4, '小明', '123', '男', 'xiaoming@163.com', 90.00, '123', 1004, 2, NULL, NULL, '2016-08-27 23:50:52', '1997-01-01 01:01:01');
INSERT INTO `tp_user` VALUES (5, '孫悟飯', '123', '男', 'wufan@163.com', 100.00, '123', 1005, -1, NULL, NULL, '2016-08-28 18:02:53', '1997-01-01 01:01:01');
INSERT INTO `tp_user` VALUES (6, '孫悟天', '123', '男', 'wutian@163.com', 110.00, '123', NULL, 0, NULL, NULL, '2016-09-28 22:07:38', '1997-01-01 01:01:01');
INSERT INTO `tp_user` VALUES (7, '櫻桃小丸子', '123', '女', 'yingtao@163.com', 77.00, '123', 1007, 1, NULL, NULL, '2016-10-29 10:53:58', '1997-01-01 01:01:01');
INSERT INTO `tp_user` VALUES (8, '孫悟空', '123', '男', 'wukong@163.com', 100.00, '123', 1008, 2, NULL, NULL, '2018-12-11 10:09:36', '1997-01-01 01:01:01');
INSERT INTO `tp_user` VALUES (9, '李白', '123', '男', 'UPPER(EMAIL)', 52.00, '123', 1011, 0, NULL, NULL, '2019-10-28 10:00:39', '2019-12-25 13:28:04');
INSERT INTO `tp_user` VALUES (10, '輝夜', '123', '女', 'HUIYE@163.COM', 91.00, '123', 1009, -3, NULL, NULL, '2019-09-20 22:01:42', '1997-01-01 01:01:01');
INSERT INTO `tp_user` VALUES (11, '李黑', '123', '男', 'LIBAI@163.COM', 102.00, '123', 2022, 3, NULL, NULL, '1997-01-01 01:01:01', '2020-01-16 17:19:08');

修改.env數(shù)據(jù)庫配置

APP_DEBUG = true

[APP]
DEFAULT_TIMEZONE = Asia/Shanghai

[DATABASE]
TYPE = mysql
HOSTNAME = 10.10.90.139
DATABASE = tp6stu01
USERNAME = root
PASSWORD = password
HOSTPORT = 3306
CHARSET = utf8
DEBUG = true
PREFIX = tp_

[LANG]
default_lang = zh-cn

測試環(huán)境下是可以使用的,但是到了線上建議配置到config下database.php

// 數(shù)據(jù)庫類型
'type'            => env('database.type', 'mysql'),
// 服務(wù)器地址
'hostname'        => env('database.hostname', '10.10.90.139'),
// 數(shù)據(jù)庫名
'database'        => env('database.database', 'tp6stu01'),
// 用戶名
'username'        => env('database.username', 'root'),
// 密碼
'password'        => env('database.password', 'password'),
// 端口
'hostport'        => env('database.hostport', '3306'),
// 數(shù)據(jù)庫連接參數(shù)
'params'          => [],
// 數(shù)據(jù)庫編碼默認(rèn)采用utf8
'charset'         => env('database.charset', 'utf8'),
// 數(shù)據(jù)庫表前綴
'prefix'          => env('database.prefix', 'tp_'),

thinkphp學(xué)習(xí)06-連接數(shù)據(jù)庫與模型初探,php,數(shù)據(jù)庫,學(xué)習(xí),java
可以通過刪除改變.env 的配置,或刪除.env 來驗(yàn)證 database 的執(zhí)行優(yōu)先級,經(jīng)過驗(yàn)證可知:.env>database.php

//default 表示設(shè)置默認(rèn)的數(shù)據(jù)庫連接,這里用的是connections下mysql的配置
'default'         => env('database.driver', 'mysql'),

新建DataTest.php

<?php

namespace app\controller;

use think\facade\Db;

class DataTest
{
    public function index()
    {
        $user = Db::table('tp_user')->select();
        //也可以切換為name就不用寫前綴了
        //$user = Db::name('user')->select();
        return json($user);
    }
}

thinkphp學(xué)習(xí)06-連接數(shù)據(jù)庫與模型初探,php,數(shù)據(jù)庫,學(xué)習(xí),java
connections 配置數(shù)據(jù)庫連接信息,可以是多個(gè)數(shù)據(jù)庫,便于切換,新建demo配置

'demo' => [
    // 數(shù)據(jù)庫類型
    'type'            => env('database.type', 'mysql'),
    // 服務(wù)器地址
    'hostname'        => env('database.hostname', '10.10.90.139'),
    // 數(shù)據(jù)庫名
    'database'        => env('database.database', 'tp6stu02'),
    // 用戶名
    'username'        => env('database.username', 'root'),
    // 密碼
    'password'        => env('database.password', 'password'),
    // 端口
    'hostport'        => env('database.hostport', '3306'),
    // 數(shù)據(jù)庫連接參數(shù)
    'params'          => [],
    // 數(shù)據(jù)庫編碼默認(rèn)采用utf8
    'charset'         => env('database.charset', 'utf8'),
    // 數(shù)據(jù)庫表前綴
    'prefix'          => env('database.prefix', 'tp_'),

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

thinkphp學(xué)習(xí)06-連接數(shù)據(jù)庫與模型初探,php,數(shù)據(jù)庫,學(xué)習(xí),java
新建demo方法

public function demo()
{
    $demo = Db::connect('demo')->table('tp_user')->select();
    return json($demo);
}

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

模型初探

在 app 目錄下創(chuàng)建一個(gè) model 目錄,并創(chuàng)建 User.php 的模型類

<?php

namespace app\model;

use think\Model;

class User extends Model
{
}

datatest.php添加getUser方法

use app\model\User;

public function getUser()
{
    $user = User::select();
    return json($user);
}

thinkphp學(xué)習(xí)06-連接數(shù)據(jù)庫與模型初探,php,數(shù)據(jù)庫,學(xué)習(xí),java
數(shù)據(jù)庫默認(rèn)鏈接的default下的配置就是mysql,現(xiàn)在想切換為demo,需要給User添加一個(gè)屬性文章來源地址http://www.zghlxwxcb.cn/news/detail-795293.html

<?php

namespace app\model;

use think\Model;

class User extends Model
{
    protected $connection = 'demo';
}

到了這里,關(guān)于thinkphp學(xué)習(xí)06-連接數(shù)據(jù)庫與模型初探的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包