本文爲我的學習整理所得,但願對讀者有所幫助。javascript
在後面的開發中,咱們會使用MySQL
做爲數據庫來開發,使用Navicat
來管理數據庫。html
若是還沒安裝的小夥伴能夠看看下面的文章,這裏就不過多敘述了。前端
進入mysql
安裝目錄的bin
目錄,我這裏是C:\Program Files\MySQL\MySQL Server 8.0\bin
,打開CMD命令行逐條輸入:mysql
create database egg_mock charset=utf8;
複製代碼
use jing_dong;
複製代碼
create table goods( id int unsigned primary key auto_increment not null,
name varchar(150) not null,
cate_name varchar(40) not null,
brand_name varchar(40) not null,
price decimal(10.3) not null default 0,
is_show bit not null default 1,
is_saleoff bit not null default 0
);
複製代碼
這裏能夠繼續使用CMD或者使用Navicat的查詢窗口操做git
insert into goods values(0,'r510vc 15.6英寸筆記本','筆記本','華碩','3399',default,default);
insert into goods values(0,'x550cc 15.6英寸筆記本','筆記本','華碩','2799',default,default);
insert into goods values(0,'x240 超極本','超極本','聯想','4880',default,default);
insert into goods values(0,'u330p 13.3英寸超級本','超極本','聯想','4299',default,default);
insert into goods values(0,'svp13226scb 觸控超級本','超級本','索尼','7999',default,default);
insert into goods values(0,'ipad mini 7.9英寸平板電腦','平板電腦','蘋果','1999',default,default);
insert into goods values(0,'iPad air 9.7英寸平板電腦','平板電腦','蘋果','3388',default,default);
insert into goods values(0,'iPad mini 配置 retine 顯示屏','平板電腦','蘋果','2788',default,default);
insert into goods values(0,'ideacentre c3340 20英寸一體電腦','臺式機','聯想','3499',default,default);
insert into goods values(0,'vostro 3800-r1206 臺式電腦','臺式機','戴爾','2899',default,default);
insert into goods values(0,'15.6 寸電腦屏保護膜','電腦配件','愛戴爾','29',default,default);
insert into goods values(0,'優雅 復古 無線鼠標鍵盤','電腦配件','雷蛇','299',default,default);
insert into goods values(0,'15寸 4K 液晶顯示屏','電腦配件','索尼','1899',default,default);
insert into goods values(0,'限量款 LOL 鼠標墊','電腦配件','惟愛','29',default,default);
複製代碼
成功插入數據後,數據如圖github
在Egg.js
中,框架提供了 egg-mysql
插件來訪問 MySQL
數據庫。這個插件既能夠訪問普通的 MySQL
數據庫,也能夠訪問基於 MySQL
協議的在線數據庫服務。sql
$ npm i --save egg-mysql
複製代碼
在config/plugin.js
中新增下列代碼:數據庫
exports.mysql = {
enable: true,
package: 'egg-mysql',
};
複製代碼
若是咱們的應用只須要訪問一個 MySQL 數據庫實例,能夠以下配置:
在config/config.default.js
中新增config
的屬性
config.mysql = {
// 單數據庫信息配置,端口號、密碼、用戶名等本身修改
client: {
// host
host: 'localhost',
// 端口號
port: '3306',
// 用戶名
user: 'root',
// 密碼
password: 'root',
// 數據庫名
database: 'egg_mock',
},
// 是否加載到 app 上,默認開啓
app: true,
// 是否加載到 agent 上,默認關閉
agent: false,
};
複製代碼
上述沒有說到的點,大夥能夠看官網文檔
當咱們的插件配置好以後,就在app.mysql
裏面引用這個變量。如:
class HomeController extends Controller {
async index() {
const { ctx, app } = this;
const res = await app.mysql.select('goods');
ctx.body = res;
}
}
複製代碼
瀏覽器輸入http://localhost:7001/
,看到下圖結果就表明成功鏈接和查詢了。
項目計劃是:基礎 ——> 後端業務 ——> 前端頁面,如今在後端模塊
PS:所有的代碼倉庫:github.com/hejian1993/…,暫時沒有分章節,僅供參考。
我是河粉,咱們下一節見
三個月前,一我的關注了我,他娶了一個如花似玉的老婆。 一週前,一我的關注了我,他中了888億。 今年,關注了個人人都娶了如花似玉的老婆結婚那天還中888億。 我已開過光,話已經放到這了。