thinkphp mysql 原生_第七节:thinkphp6数据库设计和原生查询

ThinkPHP6 数据库要使用Db类必须使用门面方式( think\facade\Db )调用

数据库操作统一入口: Db::

数据库管理软件1,phpMyAdmin(网页数据库管理)

2,Navicat for MySql(windows软件数据库管理)

创建数据库1、管理员表

CREATE TABLE `shop_admin` (

`uid` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '用户ID',

`account` varchar(50) NOT NULL COMMENT '账户',

`password` char(32) NOT NULL COMMENT '密码',

`name` varchar(50) NOT NULL COMMENT '姓名',

`status` tinyint(1) unsigned NOT NULL DEFAULT '1' COMMENT '状态 1开启 2关闭',

`add_time` int(10) unsigned NOT NULL COMMENT '添加时间',

PRIMARY KEY (`uid`)

) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COMMENT='后台管理员';

INSERT INTO `shop_admin` VALUES (1, 'admin', 'e10adc3949ba59abbe56e057f20f883e', '小鱼', 1, 1605163389);2、商品分类表

DROP TABLE IF EXISTS `shop_cat`;

CREATE TABLE `shop_cat` (

`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'ID',

`name` varchar(50) NOT NULL COMMENT '分类名',

`status` tinyint(1) unsigned NOT NULL DEFAULT '1' COMMENT '状态 1开启 2关闭',

PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COMMENT='分类表';

INSERT INTO `shop_cat` VALUES (1, '女装', 1);

INSERT INTO `shop_cat` VALUES (2, '男装', 1);

INSERT INTO `shop_cat` VALUES (3, '童装', 1);

INSERT INTO `shop_cat` VALUES (4, '女鞋', 1);

INSERT INTO `shop_cat` VALUES (5, '男鞋', 1);

INSERT INTO `shop_cat` VALUES (6, '母婴', 1);3、商品表

CREATE TABLE `shop_goods` (

`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT ' 商品ID',

`cat` int(10) unsigned NOT NULL DEFAULT '1' COMMENT '分类ID',

`title` varchar(200) NOT NULL COMMENT '商品标题',

`price` double(10,2) unsigned NOT NULL COMMENT '价格',

`discount` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '折扣',

`stock` int(10) unsigned NOT NULL DEFAULT '1' COMMENT '库存',

`status` tinyint(1) unsigned NOT NULL DEFAULT '1' COMMENT '状态 1开启 2关闭 3删除',

`add_time` int(10) unsigned NOT NULL COMMENT '添加时间',

PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=20 DEFAULT CHARSET=utf8mb4 COMMENT='商品表';

INSERT INTO `shop_goods` VALUES (1, 1, 'lolita裙原创外套斗篷洛丽塔裙子冬季', 999.99, 0, 1100, 1, 1605163489);

INSERT INTO `shop_goods` VALUES (2, 1, '樱洛芙Lolita原创小裙子', 499.00, 0, 100, 1, 1605163589);4、菜单表

CREATE TABLE `shop_menu` (

`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'ID',

`title` varchar(50) NOT NULL COMMENT '菜单名',

`fid` int(10) NOT NULL COMMENT '父ID',

`status` tinyint(1) unsigned NOT NULL DEFAULT '1' COMMENT '状态 1开启 2关闭',

PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb4 COMMENT='左侧菜单表';

INSERT INTO `shop_menu` VALUES (1, '商品管理', 0, 1);

INSERT INTO `shop_menu` VALUES (2, '商品列表', 1, 1);

INSERT INTO `shop_menu` VALUES (3, '商品分类', 1, 1);

INSERT INTO `shop_menu` VALUES (4, '用户管理', 0, 1);

INSERT INTO `shop_menu` VALUES (5, '用户列表', 4, 1);

INSERT INTO `shop_menu` VALUES (6, '购物车', 4, 1);

INSERT INTO `shop_menu` VALUES (7, '用户地址', 4, 1);

INSERT INTO `shop_menu` VALUES (8, '订单管理', 4, 1);

INSERT INTO `shop_menu` VALUES (9, '后台管理', 0, 1);

INSERT INTO `shop_menu` VALUES (10, '管理员列表', 9, 1);

INSERT INTO `shop_menu` VALUES (11, '个人中心', 9, 1);

INSERT INTO `shop_menu` VALUES (12, '左侧菜单', 9, 1);

连接数据库

如果应用需要使用数据库,必须配置数据库连接信息,数据库的配置文件有多种定义方式。

在全局或者应用配置目录下面的database.php中(后面统称为数据库配置文件)配置下面的数据库参数:

return [

'default' => 'mysql',

'connections' => [

'mysql' => [

// 数据库类型 'type' => 'mysql',

// 服务器地址 'hostname' => '127.0.0.1',

// 数据库名 'database' => 'shop',

// 数据库用户名 'username' => 'root',

// 数据库密码 'password' => 'root',

// 数据库连接端口 'hostport' => '3306',

// 数据库连接参数 'params' => [],

// 数据库编码默认采用utf8 'charset' => 'utf8',

// 数据库表前缀 'prefix' => 'shop_',

],

],

];

执行原生 MySql

1、query 方法用于执行 MySql 查询操作

public function index(){

$query = Db::query("SELECT * FROM `shop_goods` where status=1");

print_r($query);

}

2、execute 方法用于执行 MySql 新增和修改操作

public function index(){

$execute = Db::execute("INSERT INTO `shop_goods` VALUES (3, 1, 'MOISELLE慕诗春夏重工亮片红色长款收腰连衣裙', 8888.00, 0, 200, 1, 1605163499)");

print_r($execute);

$execute = Db::execute("UPDATE `shop_goods` set `price`='8800' where `id`=3 ");

print_r($execute);

}

视频教程:知乎视频​www.zhihu.comzhihu-card-default.svg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值