一. flask建模????
????1、flask本身沒(méi)有操作數(shù)據(jù)庫(kù)的能力,需要借助flask_sqlalchemy進(jìn)行操作
????2、flask_sqlalchemy是三方的一個(gè)插件,需要安裝
????3、 Sqllite數(shù)據(jù)庫(kù)是和python最契合的數(shù)據(jù)庫(kù),python在安裝同時(shí)已經(jīng)攜帶了sqllite數(shù)據(jù)庫(kù)。
1.)首先要安裝flask_sqlalchemy然后再文件中導(dǎo)入模塊

2)配置加載數(shù)據(jù)庫(kù)

3)定義數(shù)據(jù)表

4)同步數(shù)據(jù)庫(kù)

二. 數(shù)據(jù)庫(kù)常規(guī)操作
1. 增加數(shù)據(jù)

2 查看數(shù)據(jù)
1)查看當(dāng)前一個(gè)數(shù)據(jù)

? ? 2)查看所有用戶

3) 查看部分員工

4)模糊查詢

* Filter:適合比較復(fù)雜的查詢,比如 比較,模糊,聚類
* Filter_by適合簡(jiǎn)單的,安裝字段進(jìn)行固定值的查詢比如:性別為男限制查
limit限制返回條數(shù)
offset限制查詢起始位置

5)排序查詢

6)聚合查詢

7)分組查詢

8)邏輯查詢

3.刪除數(shù)據(jù)

4修改數(shù)據(jù)

三 關(guān)系操作
在數(shù)據(jù)庫(kù)建模的過(guò)程當(dāng)中,不止有基于業(yè)務(wù)主體描述數(shù)據(jù)庫(kù)模型,還有關(guān)系模型,常用的關(guān)系有以下兩種
1.一對(duì)多關(guān)系?
公司, 職位 員工
員工和職位是多對(duì)一關(guān)系,一個(gè)員工可以有一個(gè)職位,一個(gè)職位可以對(duì)應(yīng)多個(gè)員工,在數(shù)據(jù)庫(kù)當(dāng)中,通常采用外鍵來(lái)進(jìn)行一對(duì)多約束。
外鍵使用foreign-key就可以達(dá)成外鍵

使用position表查詢對(duì)應(yīng)職位的員工可以使用p_persion字段

當(dāng)使用persion表查詢對(duì)應(yīng)員工的職位的時(shí)候,需要用反向映射字段

所謂外鍵,就是在一對(duì)多關(guān)系當(dāng)中,在多表當(dāng)中搭建字段,指向一表的id形成關(guān)聯(lián)關(guān)系。
2.多對(duì)多關(guān)系
職位和員工:一個(gè)職位對(duì)應(yīng)多個(gè)員工,一個(gè)員工對(duì)應(yīng)一個(gè)職位。職位表是一表,員工表是多表,所以在員工表創(chuàng)建字段,定義外鍵,指向職位表。
在公司當(dāng)中,有了職位就會(huì)有權(quán)限。?
查詢擁有查看部門考勤權(quán)限的職位 ,一對(duì)多關(guān)系,采用外鍵,多對(duì)多關(guān)系采用中間表。

首先搭建多對(duì)多關(guān)系

搭建映射關(guān)系






