亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

醫(yī)藥信息管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì):從三范式建模到事務(wù)與索引優(yōu)化實(shí)踐

醫(yī)藥信息管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì):從三范式建模到事務(wù)與索引優(yōu)化實(shí)踐 簡介這是一份面向高校數(shù)據(jù)庫課程設(shè)計(jì)場景的醫(yī)藥信息管理系統(tǒng)完整項(xiàng)目包覆蓋藥品、員工、客戶、供應(yīng)商等基礎(chǔ)信息維護(hù)并實(shí)現(xiàn)進(jìn)貨、庫房、銷售、財(cái)務(wù)統(tǒng)計(jì)四大業(yè)務(wù)模塊適合正在做數(shù)據(jù)庫課設(shè)或畢設(shè)、需要可直接運(yùn)行參考系統(tǒng)的學(xué)生。資源為zip壓縮包共335個文件約4.05MB體積緊湊便于快速部署其中含150個gif演示截圖、54個java源碼文件以及html/js/css前端頁面、sql數(shù)據(jù)庫腳本、Maven配置和項(xiàng)目說明文件目錄結(jié)構(gòu)清晰便于導(dǎo)入IDE后整體跑通。目前已有71人學(xué)習(xí)下載。包內(nèi)完整代碼和界面素材可直接用于理解系統(tǒng)分層與數(shù)據(jù)庫表設(shè)計(jì)也可在此基礎(chǔ)上擴(kuò)展訂單、庫存預(yù)警等功能能有效節(jié)省前后端搭建時間是完成醫(yī)藥管理類課設(shè)的高價值參考資料。1. 數(shù)據(jù)庫課設(shè)醫(yī)藥信息管理系統(tǒng)一張?zhí)幏嚼镉卸嗌贁?shù)據(jù)要管數(shù)據(jù)庫課程設(shè)計(jì)只要題目一帶“醫(yī)藥信息管理系統(tǒng)”很多同學(xué)第一反應(yīng)就是“又是藥品增刪改查”。但真要在答辯時把一張?zhí)幏街v清楚背后其實(shí)是三庫分離的底子藥品基礎(chǔ)數(shù)據(jù)、供應(yīng)商與采購流水、客戶處方與銷售庫存。這個系統(tǒng)最自然的落點(diǎn)是用 MySQL 或 SQL Server 建出符合第三范式的十幾張表再用事務(wù)把“開處方→扣庫存→記流水”這一串動作包起來讓數(shù)據(jù)要么全部生效、要么全部回滾。適合誰做MySQL、SQL Server 這門課剛學(xué)完、想在課設(shè)里同時體現(xiàn)“設(shè)計(jì)能力 代碼落地”的同學(xué)也適合畢業(yè)設(shè)計(jì)想低成本先搭一個能演示的醫(yī)療業(yè)務(wù)底座。讀完這篇你能照著一套可復(fù)現(xiàn)的建表 SQL 和 JavaJDBC調(diào)用方式把數(shù)據(jù)庫課設(shè)從“畫 ER 圖”一路做到“能開機(jī)演示”。2. 先設(shè)計(jì)再建表ER 模型、范式與 8 張核心表課設(shè)答辯時最容易被追問的不是“你怎么寫代碼”而是“為什么這么建表”。所以建表之前必須先把業(yè)務(wù)實(shí)體抽出來再按范式和后續(xù)查詢習(xí)慣去拆表真正落地成 SQL。2.1 從業(yè)務(wù)流程抽實(shí)體藥品、供應(yīng)商、庫存和處方誰先誰后醫(yī)藥信息管理系統(tǒng)最常見的業(yè)務(wù)閉環(huán)是采購入庫 → 庫存管理 → 銷售出庫。圍繞這個閉環(huán)實(shí)體有七八個是正常的少了會被老師說“太簡陋”多了又容易掉進(jìn)過度設(shè)計(jì)。我一般按四條主線去抽藥品主線藥品信息、藥品分類、藥品規(guī)格。采購主線供應(yīng)商、采購訂單、采購明細(xì)、入庫記錄。銷售主線客戶或患者、處方/銷售單、銷售明細(xì)、退款記錄。庫存與財(cái)務(wù)主線庫存表、流水表、盤點(diǎn)記錄。這里最關(guān)鍵的設(shè)計(jì)決策是藥品信息表只放“通用屬性”把價格、批號、效期放到獨(dú)立的表里。很多課設(shè)把藥品表搞成一個大寬表加上drug_name、price、stock、expire_date一大堆——一修改就冗余。更穩(wěn)的做法是拆出drug_stock和drug_batch。批號獨(dú)立成表還有一個實(shí)際好處藥監(jiān)場景下同一藥品多個批號、不同進(jìn)價、不同效期按“一藥一批”做管理才說得通。ER 圖里把這兩個多值字段拆出去天然符合第二范式和第三范式。2.2 三段式建庫建庫、建表、插種子數(shù)據(jù)下面這組 SQL 以 MySQL 8.0 為準(zhǔn)SQL Server 2019 只要把AUTO_INCREMENT換成IDENTITY(1,1)、反引號去掉就能平移過去。先建庫再建核心表最后灌種子數(shù)據(jù)用于演示。-- 建庫字符集用 utf8mb4避免中文和生僻字亂碼 CREATE DATABASE IF NOT EXISTS pharma_sys DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; USE pharma_sys; -- 1. 藥品分類表樹形結(jié)構(gòu)parent_id 指向自身主鍵 CREATE TABLE drug_category ( id INT AUTO_INCREMENT PRIMARY KEY, parent_id INT DEFAULT 0 COMMENT 父分類 id0 表示頂級, category_name VARCHAR(50) NOT NULL, sort_order INT DEFAULT 0 ); -- 2. 藥品信息表只有“不變”的基礎(chǔ)屬性 CREATE TABLE drug_info ( id INT AUTO_INCREMENT PRIMARY KEY, category_id INT NOT NULL, drug_code VARCHAR(20) NOT NULL UNIQUE COMMENT 藥品編碼作為業(yè)務(wù)唯一鍵, drug_name VARCHAR(100) NOT NULL, spec VARCHAR(50) COMMENT 規(guī)格如 5mg*20片, unit VARCHAR(10) DEFAULT 盒, manufacturer VARCHAR(100), approval_no VARCHAR(30) COMMENT 批準(zhǔn)文號, create_time DATETIME DEFAULT CURRENT_TIMESTAMP ); -- 3. 供應(yīng)商表 CREATE TABLE supplier ( id INT AUTO_INCREMENT PRIMARY KEY, supplier_name VARCHAR(100) NOT NULL, contact_person VARCHAR(20), phone VARCHAR(20), address VARCHAR(200) ); -- 4. 藥品庫存表數(shù)量只在這里維護(hù) CREATE TABLE drug_stock ( drug_id INT PRIMARY KEY COMMENT 與 drug_info.id 一一對應(yīng), batch_no VARCHAR(30) COMMENT 批號, expire_date DATE COMMENT 效期, quantity DECIMAL(12,3) DEFAULT 0 COMMENT 庫存數(shù)量支持最小拆零單位, purchase_price DECIMAL(10,3), sale_price DECIMAL(10,2) );字段說明里要特別注意decimal而不是float金額和數(shù)量在課設(shè)里看起來都是小數(shù)但float是近似存儲1.4 變成 1.399999999 的新聞年年有。價格用DECIMAL(10,2)庫存用DECIMAL(12,3)是為了兼容“按克賣”的拆零藥品演示時也能講出理由。drug_code單獨(dú)加唯一索引避免業(yè)務(wù)里拿自增主鍵到處傳——這是給藥品、供應(yīng)商、處方三個模塊共用的“主鍵外露”教訓(xùn)。銷售側(cè)的兩張表單獨(dú)再建因?yàn)樗鼈兂袚?dān)“流水”職責(zé)不適合和基礎(chǔ)表混在一起-- 5. 銷售主表處方/銷售單頭 CREATE TABLE sales_order ( id INT AUTO_INCREMENT PRIMARY KEY, order_no VARCHAR(20) NOT NULL UNIQUE COMMENT 單號演示時用時間戳生成, customer_name VARCHAR(50), total_amount DECIMAL(10,2) DEFAULT 0, sale_status TINYINT DEFAULT 0 COMMENT 0 待付款 1 已付款 2 已退款, create_time DATETIME DEFAULT CURRENT_TIMESTAMP ); -- 6. 銷售明細(xì)表一個單頭對應(yīng)多行 CREATE TABLE sales_order_item ( id INT AUTO_INCREMENT PRIMARY KEY, order_id INT NOT NULL, drug_id INT NOT NULL, drug_name VARCHAR(100) COMMENT 冗余字段防止藥品改名后歷史單看不清, quantity DECIMAL(10,3) NOT NULL, price DECIMAL(10,2) NOT NULL, amount DECIMAL(10,2) NOT NULL COMMENT quantity * price ); -- 7. 入庫記錄表供應(yīng)商、采購、效期一起落這里 CREATE TABLE stock_in_record ( id INT AUTO_INCREMENT PRIMARY KEY, drug_id INT NOT NULL, supplier_id INT, batch_no VARCHAR(30), quantity DECIMAL(10,3) NOT NULL, purchase_price DECIMAL(10,3), operate_user VARCHAR(20), in_time DATETIME DEFAULT CURRENT_TIMESTAMP );sales_order_item里冗余drug_name看似違反范式實(shí)際上是有意為之歷史銷售單里的藥品名必須“定格”否則藥品改名之后報(bào)表上全是新名字說不清楚當(dāng)時賣的是什么。這個設(shè)計(jì)點(diǎn)答辯時主動講老師會認(rèn)為你理解“范式是為了查詢服務(wù)不是教條”。2.3 外鍵與索引什么時候該設(shè)什么時候不該設(shè)建表之后就是外鍵和索引的選擇題。外鍵在課設(shè)里建議設(shè)因?yàn)閟ales_order_item.order_id、drug_stock.drug_id這類關(guān)系是強(qiáng)約束寫不存在的藥品編碼直接報(bào)錯演示時也能體現(xiàn)“數(shù)據(jù)庫自身在兜底”。但要注意stock_in_record.supplier_id這類弱關(guān)聯(lián)我一般不加外鍵加一個普通索引就可以因?yàn)楣?yīng)商改不修改并不影響入庫流水加了外鍵反而會讓DELETE FROM supplier頻頻失敗。索引是數(shù)據(jù)庫優(yōu)化里最容易講出內(nèi)容的點(diǎn)。sales_order的order_no必須唯一索引sales_order_item的order_id加普通索引stock_in_record的drug_id batch_no加聯(lián)合索引。真正要克制的是不要在每列都加索引醫(yī)藥系統(tǒng)里頻繁查詢的是“按單號查明細(xì)”“按藥品查庫存”“按供應(yīng)商查流水”這三條覆蓋到了就夠用。3. 把增刪改查做“穩(wěn)”事務(wù)、存儲過程與連接池配置表建好只是地基。很多數(shù)據(jù)庫課設(shè)的死穴是業(yè)務(wù)代碼里先查庫存再改庫存結(jié)果兩個窗口同時下單庫存變成了負(fù)數(shù)。所以這一章要解決的核心問題是“并發(fā)和一致怎么在自己手里控制住”落到三個點(diǎn)上事務(wù)邊界、庫存扣減的原子更新、連接池參數(shù)。3.1 并發(fā)扣庫存為什么必須用行鎖而不是先查后改“先查數(shù)量是否夠 → 夠就 UPDATE”是新手最常見的寫法也是高并發(fā)翻車的源頭。兩個會話同時讀到庫存還剩 10各自都判斷“夠”各自減去 1庫存最終變成 9但實(shí)際賣了 2 件。數(shù)據(jù)庫里的行鎖解決的是“寫之間互斥”不是“讀與寫之間互斥”所以靠“先查后改”根本鎖不住。解法是把判斷和扣減合成一條 SQL利用行鎖的原子性-- 扣庫存一次 UPDATE 完成“查詢 校驗(yàn) 修改” UPDATE drug_stock SET quantity quantity - 1 WHERE drug_id 1 AND quantity 1; -- 影響行數(shù) 1扣減成功 -- 影響行數(shù) 0庫存不足回滾整個事務(wù)這條 SQL 在任何隔離級別下都不會超賣quantity 1條件讓多余的扣減直接匹配不到行而 UPDATE 本身會對命中的行加排他鎖。再配合下面的庫存流水表記錄就能做到“賬實(shí)相符”。-- 庫存流水每次增減都記一行作為審計(jì)依據(jù) CREATE TABLE stock_flow ( id INT AUTO_INCREMENT PRIMARY KEY, drug_id INT NOT NULL, change_type TINYINT COMMENT 1 入庫 2 銷售出庫 3 盤點(diǎn)調(diào)整, change_quantity DECIMAL(10,3), before_quantity DECIMAL(10,3), after_quantity DECIMAL(10,3), flow_time DATETIME DEFAULT CURRENT_TIMESTAMP );參數(shù)說明change_type用TINYINT加注釋存數(shù)字不存中文數(shù)據(jù)量上來之后查詢和統(tǒng)計(jì)都方便。before_quantity和after_quantity留雙份快照是為了報(bào)表里直接算出“變化前后”避免再去關(guān)聯(lián)庫存表。血淚經(jīng)驗(yàn)如果庫存流水只記變化量不記前后值年終盤點(diǎn)對賬時基本要重跑一遍全量數(shù)據(jù)才能定位差異。3.2 用存儲過程包住“銷售主表 明細(xì) 庫存”三件事多表寫入的正確姿勢是放在一個事務(wù)里。這里給一個 MySQL 存儲過程的寫法它把三步操作包成單次調(diào)用插入銷售主表、批量插入明細(xì)、逐條扣庫存。任何一步失敗全部回滾。DELIMITER $$ CREATE PROCEDURE sp_create_sales_order( IN p_order_no VARCHAR(20), IN p_customer_name VARCHAR(50), IN p_items JSON -- 明細(xì)以 JSON 數(shù)組傳入 ) BEGIN DECLARE v_order_id INT; DECLARE v_drug_id INT; DECLARE v_qty DECIMAL(10,3); DECLARE v_rows INT DEFAULT 0; DECLARE v_i INT DEFAULT 0; START TRANSACTION; -- 1. 寫銷售主表 INSERT INTO sales_order(order_no, customer_name, sale_status) VALUES(p_order_no, p_customer_name, 1); SET v_order_id LAST_INSERT_ID(); -- 2. 解析 JSON 數(shù)組逐條寫明細(xì)并扣庫存 SET v_rows JSON_LENGTH(p_items); WHILE v_i v_rows DO SET v_drug_id JSON_UNQUOTE(JSON_EXTRACT(p_items, CONCAT($[, v_i, ].drugId))); SET v_qty JSON_UNQUOTE(JSON_EXTRACT(p_items, CONCAT($[, v_i, ].quantity))); INSERT INTO sales_order_item(order_id, drug_id, drug_name, quantity, price, amount) SELECT v_order_id, id, drug_name, v_qty, sale_price, v_qty * sale_price FROM drug_info JOIN drug_stock ON drug_info.id drug_stock.drug_id WHERE drug_info.id v_drug_id; -- 上面 INSERT 影響行數(shù)為 0 說明藥品不存在直接回滾 IF ROW_COUNT() 0 THEN ROLLBACK; SIGNAL SQLSTATE 45000 SET MESSAGE_TEXT 藥品不存在或已停售; END IF; -- 原子扣庫存影響行數(shù)為 0 說明庫存不足 UPDATE drug_stock SET quantity quantity - v_qty WHERE drug_id v_drug_id AND quantity v_qty; IF ROW_COUNT() 0 THEN ROLLBACK; SIGNAL SQLSTATE 45000 SET MESSAGE_TEXT 庫存不足; END IF; SET v_i v_i 1; END WHILE; -- 3. 更新主表總金額 UPDATE sales_order SET total_amount (SELECT SUM(amount) FROM sales_order_item WHERE order_id v_order_id) WHERE id v_order_id; COMMIT; END$$ DELIMITER ;這段代碼的核心不是 JSON 解析而是事務(wù)邊界的切割。START TRANSACTION之后所有寫操作共享同一個事務(wù)中間任何ROLLBACK都會把已插入的明細(xì)撤干凈。參數(shù)里p_items用 JSON 僅僅是為了演示一個完整調(diào)用鏈如果你課設(shè)的數(shù)據(jù)庫是 SQL Server 2019可以把 JSON 換成臨時表或表值參數(shù)思路完全一致。調(diào)用方Java 的 JDBC只需要CallableStatement注冊這三個參數(shù)p_order_no、p_customer_name、p_items。注意 JSON 字符串里不能用單引號包鍵名MySQL 的 JSON 解析只認(rèn)雙引號這段在聯(lián)調(diào)時經(jīng)常被卡一下。3.3 連接池參數(shù)與 UTF-8Navicat 導(dǎo)出腳本常見的被埋參數(shù)課設(shè)里數(shù)據(jù)庫連接最常出問題的是兩處JDBC URL 忘了加characterEncoding以及連接池線程配得太小導(dǎo)致“假死”。下面是一份實(shí)際可用的druid.properties配置及注釋# Druid 連接池基礎(chǔ)參數(shù) driverClassNamecom.mysql.cj.jdbc.Driver urljdbc:mysql://localhost:3306/pharma_sys?useUnicodetruecharacterEncodingutf8mb4serverTimezoneAsia/ShanghaiuseSSLfalse usernameroot password你的密碼 # 初始連接數(shù) / 最小空閑 / 最大活躍 initialSize5 minIdle5 maxActive20 # 獲取連接的超時時間單位毫秒 maxWait60000參數(shù)說明characterEncodingutf8mb4解決的是中文亂碼問題utf8mb4比utf8多覆蓋了 emoji 和特殊生僻字醫(yī)藥名里偶爾會出現(xiàn)這類字符。maxWait60000的意思是請求連接最多等 60 秒超過就拋異常而不是無限阻塞——演示現(xiàn)場最尷尬的畫面就是程序卡死在“獲取連接”這一步Java 線程池里一囤任務(wù)看起來像死機(jī)。maxActive20按課設(shè)體量綽綽有余別調(diào)成 100連接數(shù)過大反而拖垮 MySQL。有個常見的玄學(xué)現(xiàn)象本地用 Navicat 跑 SQL 正常Java 程序查詢中文全變問號。十有八九是 Navicat 導(dǎo)出腳本時的編碼和 JDBC URL 不一致導(dǎo)出時選 UTF-8連接串也寫 UTF-8兩邊對齊就不亂碼。4. 視圖、報(bào)表與權(quán)限讓課設(shè)看起來像一個系統(tǒng)只做單表增刪改查答辯大概率被批“像大作業(yè)”。真正讓醫(yī)藥管理系統(tǒng)“系統(tǒng)感”出來的是三個東西能主動發(fā)現(xiàn)問題的視圖、能出報(bào)表的聚合查詢、以及能說清楚的權(quán)限模型。這一章給出這三塊的落地寫法。4.1 快過期藥品提醒把“再過 90 天失效”變成一條查詢醫(yī)藥系統(tǒng)區(qū)別于一般進(jìn)銷存的核心場景是效期管理。一張藥品庫存表里有批號和效期但人工去盯太原始。用一個視圖把“臨期藥品”算出來Java 端直接SELECT * FROM v_expiring_drugs既簡單又能在答辯時講“用視圖屏蔽了復(fù)雜條件”。CREATE VIEW v_expiring_drugs AS SELECT d.drug_code, d.drug_name, s.batch_no, s.expire_date, s.quantity, DATEDIFF(s.expire_date, CURDATE()) AS remain_days FROM drug_stock s JOIN drug_info d ON s.drug_id d.id WHERE s.expire_date BETWEEN CURDATE() AND DATE_ADD(CURDATE(), INTERVAL 90 DAY) AND s.quantity 0 ORDER BY s.expire_date ASC;DATE_ADD(CURDATE(), INTERVAL 90 DAY)是 MySQL 的日期函數(shù)90 天這個閾值你可以改成180或30改成參數(shù)后更適合做“預(yù)警策略”。視圖的好處是條件只維護(hù)在一處Java 端的查詢代碼不會到處散落expire_date判斷。這個視圖在 ER 圖里不需要畫出來但報(bào)告里寫一段“基于視圖的臨期預(yù)警模塊”會讓評委老師覺得你對數(shù)據(jù)庫的掌握超出“會建表”一個層級。4.2 月度銷售統(tǒng)計(jì)GROUP BY 與日期索引的一個典型配合報(bào)表是數(shù)據(jù)庫課設(shè)的高頻考點(diǎn)。下面這條 SQL 統(tǒng)計(jì)最近 30 天每個藥品的銷售數(shù)量和銷售額SELECT d.drug_code, d.drug_name, SUM(i.quantity) AS total_qty, SUM(i.amount) AS total_amount, COUNT(DISTINCT o.id) AS order_count FROM sales_order_item i JOIN sales_order o ON o.id i.order_id JOIN drug_info d ON d.id i.drug_id WHERE o.create_time DATE_SUB(CURDATE(), INTERVAL 30 DAY) AND o.sale_status 1 GROUP BY d.drug_code, d.drug_name ORDER BY total_amount DESC LIMIT 20;關(guān)鍵點(diǎn)有兩個第一WHERE o.create_time ...如果量大了必須配合sales_order.create_time上的索引否則每次統(tǒng)計(jì)都全表掃第二GROUP BY的列要和SELECT的非聚合列一致drug_code、drug_name否則在 MySQL 5.7 以上會直接報(bào)ONLY_FULL_GROUP_BY錯誤這是課設(shè)里被問爆的一個報(bào)錯后面避坑章會專門展開。這里還有一個面試官愛問的優(yōu)化點(diǎn)COUNT(DISTINCT o.id)在數(shù)據(jù)量大時開銷不小如果只是演示可以去掉這個字段或改成“訂單數(shù) ≈ 明細(xì)條數(shù)”減少一層計(jì)算。報(bào)表類 SQL 要在“演示夠用”和“理論正確”之間取平衡真拿千萬級數(shù)據(jù)來壓LIMIT 20 只是保底手段。4.3 權(quán)限模型三張表解決“誰說能看報(bào)表”醫(yī)藥管理系統(tǒng)繞不開的角色無非是“系統(tǒng)管理員”“藥房操作員”“報(bào)表查看者”。如果你的課設(shè)只有一張登錄表和一段if (username.equals(admin))數(shù)據(jù)庫層就太單薄了。常見做法是用最樸素的 RBAC基于角色的訪問控制——三張表-- 用戶表 CREATE TABLE sys_user ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(30) NOT NULL UNIQUE, password_hash VARCHAR(64) NOT NULL, real_name VARCHAR(20), role_id INT NOT NULL ); -- 角色表 CREATE TABLE sys_role ( id INT AUTO_INCREMENT PRIMARY KEY, role_name VARCHAR(30) NOT NULL UNIQUE, role_desc VARCHAR(100) ); -- 菜單/功能權(quán)限表user 通過 role 獲得權(quán)限 CREATE TABLE sys_menu ( id INT AUTO_INCREMENT PRIMARY KEY, menu_code VARCHAR(50) NOT NULL UNIQUE, menu_name VARCHAR(50), parent_id INT DEFAULT 0 ); -- 角色-菜單關(guān)聯(lián)表 CREATE TABLE sys_role_menu ( role_id INT NOT NULL, menu_id INT NOT NULL, PRIMARY KEY (role_id, menu_id) );三張實(shí)體表再加一張關(guān)聯(lián)表登錄之后查一次角色再查一次菜單集合就能在前端控制“操作員看不到成本價、只有管理員能點(diǎn)盤點(diǎn)”。注意password_hash字段這里只放了 64 字符占位實(shí)際課設(shè)里可以直接用 Java 的BCrypt或SHA-256但一定要在報(bào)告里寫清楚“沒有存明文密碼”——這一句話就能避開答辯時“你這密碼安全嗎”的追問。5. 避坑手冊醫(yī)藥系統(tǒng)里最容易翻車的 5 個點(diǎn)這一章寫給已經(jīng)建完表、正準(zhǔn)備聯(lián)調(diào)的你。以下 5 個坑都是真實(shí)出現(xiàn)過的每一條都用“現(xiàn)象→原因→解決”的方式展開對著排查能省下一個通宵。5.1 金額算錯float 浮點(diǎn)精度引發(fā)的“對不上賬”現(xiàn)象銷售訂單明細(xì)里顯示單價 9.9 元數(shù)量 3 盒總金額卻是 29.699999 元。明細(xì)單條看不出來月度匯總一跑小數(shù)位全亂。原因建表時把price、amount定義成了FLOAT。浮點(diǎn)數(shù)是二進(jìn)制近似存儲9.9 在內(nèi)存里并不是精確的 9.9乘 3 之后誤差被放大。解決金額列全部改成DECIMAL(10,2)庫存數(shù)量按實(shí)際業(yè)務(wù)用DECIMAL(12,3)或INT。已經(jīng)建錯表的用ALTER TABLE sales_order_item MODIFY price DECIMAL(10,2);逐列改。這個坑的隱蔽之處在于數(shù)據(jù)量小的時候肉眼看不出問題直到報(bào)表對賬才暴露。5.2 外鍵刪除失敗刪分類時被“正在使用”卡住現(xiàn)象點(diǎn)擊刪除某個藥品分類程序報(bào)Cannot delete or update a parent row: a foreign key constraint fails或者干脆在DELETE時卡住。原因分類表drug_category被drug_info.category_id外鍵引用系統(tǒng)拒絕刪除“有子數(shù)據(jù)的父記錄”。這不是 MySQL 故障是外鍵機(jī)制在起作用但新手往往不知道看完整錯誤信息。解決三個選項(xiàng)任選。第一業(yè)務(wù)上禁止物理刪除用is_deleted TINYINT DEFAULT 0邏輯刪除這是醫(yī)藥系統(tǒng)最推薦的做法第二先清空該類下所有藥品再刪分類第三刪除前把子表數(shù)據(jù)轉(zhuǎn)移到其他分類。答辯時看到這個報(bào)錯別慌順著外鍵關(guān)系說一句“這是數(shù)據(jù)庫在保護(hù)引用完整性”反而加分。5.3 并發(fā)下單把庫存扣成負(fù)數(shù)現(xiàn)象兩個客戶端同時售出同一種藥品最終庫存變成 -1但界面沒有任何報(bào)錯。我和很多同學(xué)一樣在這地方吃過虧。原因代碼只有“先 SELECT 庫存再 UPDATE 庫存”兩個請求同時讀、后寫的覆蓋了前寫的更新。SELECT 和 UPDATE 之間根本不是原子操作。解決回到 3.1 節(jié)那條UPDATE ... WHERE quantity ?的方式。就算 UPDATE 一行數(shù)據(jù)庫會對命中行加鎖第二次請求會等待第一次提交后才執(zhí)行要么扣減成功、要么影響行數(shù)為 0 被回滾。不要在事務(wù)里先 SELECT 再 UPDATE 來“實(shí)現(xiàn)業(yè)務(wù)判斷”。5.4 中文亂碼Navicat 里好端端Java 一讀就是問號現(xiàn)象在 Navicat 查詢窗口執(zhí)行INSERT中文正常同樣的表用 Java 程序插入庫存表里的藥品名變成???。原因連接字符集不一致。常見的是 JDBC URL 沒帶characterEncoding或者 MySQL 服務(wù)端character_set_server仍是 latin1。解決三步對齊。第一步MySQL 庫、表統(tǒng)一utf8mb4第二步JDBC URL 寫法是jdbc:mysql://localhost:3306/pharma_sys?useUnicodetruecharacterEncodingutf8mb4第三步如果用的是 Druid 連接池確認(rèn)connectionProperties里沒有覆蓋掉 URL 的編碼參數(shù)。這個坑 95% 靠第二步解決剩下 5% 是代碼里建 Statement 時手動指定USE NAMES utf8mb4。5.5 GROUP BY 報(bào)錯明明查詢字段都對了還是提示 1055現(xiàn)象跑月度統(tǒng)計(jì)報(bào)表時MySQL 報(bào)Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column錯誤碼 1055。原因MySQL 5.7 及以上默認(rèn)開啟ONLY_FULL_GROUP_BYSQL 模式要求 SELECT 的非聚合列必須出現(xiàn)在 GROUP BY 里或者被聚合函數(shù)包住。解決先把 SQL 寫成規(guī)范形式列出所有非聚合列如GROUP BY d.drug_code, d.drug_name。因?yàn)閐rug_code和drug_name都在 SELECT 里就得都寫進(jìn) GROUP BY。如果只是想在課設(shè)演示時快速跑通臨時修改sql_mode去掉ONLY_FULL_GROUP_BY也行但報(bào)告里最好別拿出來說——答辯老師通常認(rèn)為這是治標(biāo)不治本的妥協(xié)。6. 驗(yàn)收自測課堂演示前要跑通的三個場景系統(tǒng)寫完后給自己做一次“模擬驗(yàn)收”。這一步的價值在于把數(shù)據(jù)庫層面的特性真正演示出來而不是靠 PPT 念一遍。下面這三個場景能覆蓋事務(wù)、并發(fā)、優(yōu)化三個高頻扣分點(diǎn)。第一個場景是事務(wù)回滾。開一個事務(wù)故意插入一個不存在的drug_id銷售明細(xì)存儲過程應(yīng)當(dāng)返回“藥品不存在”并整體回滾。驗(yàn)證方法很簡單事務(wù)執(zhí)行前記錄sales_order的最大 id執(zhí)行失敗后重新查詢該 id 不存在sales_order_item中也沒有半截?cái)?shù)據(jù)。答辯時說“要么全部成功要么全部不成功”這句話就是用START TRANSACTION和ROLLBACK頂起來的。第二個場景是并發(fā)扣庫存。準(zhǔn)備一個庫存量為 10 的藥品開兩個客戶端同時各買 6 盒。結(jié)果應(yīng)當(dāng)是一個成功、一個提示庫存不足最終庫存為 4 而不是 -2。這里要向老師指出成功方用UPDATE ... WHERE quantity ?拿到行鎖失敗方等待鎖釋放后匹配不到記錄影響行數(shù)為 0 被回滾。我強(qiáng)烈建議在答辯前實(shí)際演示一次因?yàn)椴l(fā)的不確定性會讓很多“理論上正確”的程序當(dāng)場翻車。第三個場景是慢查詢分析。先在sales_order.create_time建索引再跑月度銷售統(tǒng)計(jì) SQL執(zhí)行EXPLAIN看type和rowsEXPLAIN SELECT ... FROM sales_order_item i JOIN sales_order o ON o.id i.order_id WHERE o.create_time 2024-01-01;重點(diǎn)關(guān)注三列type是否為ref或rangekey是否真的用了idx_create_timerows是否遠(yuǎn)小于全表行數(shù)。如果顯示ALL全表掃描就是索引沒生效最常見原因是 WHERE 條件里的列和索引列類型不一致或者create_time在函數(shù)里包了一層。這個EXPLAIN跑完數(shù)據(jù)庫優(yōu)化這一塊的分?jǐn)?shù)基本就拿到了。最后說一個每次答辯都會被追問的細(xì)節(jié)備份與恢復(fù)。課設(shè)報(bào)告里寫清楚“用mysqldump做每日備份恢復(fù)時用SOURCE導(dǎo)回”再加上一句“實(shí)際生產(chǎn)環(huán)境不能只靠單機(jī)備份”。醫(yī)藥數(shù)據(jù)屬于強(qiáng)監(jiān)管數(shù)據(jù)這句話能讓你和只寫了一堆 CRUD 的同學(xué)明顯拉開距離。我在做這類系統(tǒng)的課設(shè)時養(yǎng)成的一個習(xí)慣是在每個核心表上都留一個create_time和update_time字段哪怕當(dāng)時用不上。后面加審核、加審計(jì)、加數(shù)據(jù)對比都會感謝當(dāng)時的這個決定。數(shù)據(jù)庫課設(shè)最怕的不是功能少而是不給自己留余地。希望這份從建表到避坑的整套做法能幫到你至少讓你在后半夜聯(lián)調(diào)時少走兩條彎路。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
中文字幕啊啊啊在线观看视频| 中文字幕91综合| 日本不卡一区二区三区| 乱老女人一区二区视频| 天天综合91入口| 9久热| 国产精品视屏| 韩国女主播青草在线| ..日韩av毛片精品久久久| 成人精品水蜜桃久久久久久久| 午夜黄色免费在线观看| 看全色黄大色大片免费视频| 色大师网站www永久网站视频| 国产精品无码av| 99精品九九九九九九| 无码色| 草草影院最新网址| 大香蕉日韩| 美国久久一二三四| 五月婷色| 中文字幕日韩人妻视频一区二区三区 | 国产中午字一暮区| 欧美亚洲20p| 亚洲女毛多水多21P| 精品传媒在线一区| 亚洲天天精品| 久久久久久9999| 日韩精品区二区三区不卡| 男女性无套 免费九一| 久操免费电影| 四虎精品永久在线观看| 新视频sss国产| 欧亚洲精品有视频| av日韩在线观看电影| 免费观看性欧美一级| 99久草| 久久精品国产久精国产| 伊人991| 熟女一区二区| 91老司机在线视频免费观看 | 中文字幕在线24| 思思热久久成人| 国语对白露脸XXXXXX| 美女诱惑久久| 蜜臀Av一区二区三区| 久久久精品一区二区| 怡红院怡春院| 91色人妻| 春色综合免费| 综合大香蕉美。| 日韩少妇在线视频| 男人下部插入女人下部 | www成人啪啪18秘 免费| 黄网色一区二区三区四区精品| www.亚洲黄色| 天天亚洲| 国产成人精品网站| 女人久久久| 亚洲男人天堂网站| 亚洲美女av无码| 99热婷婷一区二区三| 日韩天天本| 丰满人妻一区| 超碰社区97| 亚洲宗合网| 99国产精品自在自在| 天美麻豆黄色录像| 国产精品久久久久婷婷二区次| 久操av在线| 草B在线| 91天天美女| 78操B| 亚洲无线观看久久| AV无码久久久精品| 综合操逼| 妺妺跟我一起洗澡没忍住| 99热这里是精品| 天天影视综合网欧美精品| 91人妻丝袜无码| 爱啪精品一区| 欧美激色| 日韩欧美亚洲自拍偷拍| 亚洲黄色网址视频| 久久久久骚| 日本不卡二三区| 亚洲自拍青操视频| 欧美日韩午夜精品一区二区三区| 五月丁香社区婷婷日韩欧美精品影院| 久久久久久久久久久六六| 亚洲乱色视频一区、二区在线| 热久日综合| 91欧洲入口| 青青草好吊色| 久久国内| juliaann丝袜大战黑鬼| 超碰97伊人| 无码人妻精品一区二区中文| 人人爱操| 色五月第四色| 亚洲无 码A片在线观看麻豆| 毛片电影一区二区三区| 乱码熟妇人妻久久久| 欧亚日韩综合精品国产| 亚洲欧美一区二区网址| 性爱乱伦一区| 好屌色综合| 香蕉综合网| 肉嘟嘟www视频在线观看高清| 日本黄 R色 成 人网站| 中 文字幕一区二区三四 五 区日 日 骚 | 韩国毛片一区二区三区| 免费αV在线视频| 涩五月婷婷| 99热这里只有是精品10| 夜夜躁狠狠躁日日躁av| 99热婷婷| 78m啪啪啪| 超碰成人最新最好看| 日本三级R| 热久日综合| 上床啊啊啊| AⅤ片水多多| 欧美 亚洲 制服 精品| 色欧美色交综合| 手机在线中文字幕国产| 99国产精品免费| 精品国产Av无码久久久亚洲| 国产AV激情无码久久无码| 久久久中文| 成人精品水蜜桃久久久久久久| 天天上日日上日韩精品| 男人的天堂2018东京热啪啪啪| 久久久久9999精品九九九| 中文视频在线观看| 日本欧美韩国日产片片在线看免| 超碰97 线线 在现| 欧美日韩国产中文精品字幕自在自线,| 欧美日韩系列| 亚洲欧美成人在线| 强上我不卡卡| ji熟女.com| 久久鲁夜| 日韩性爱免费视频在线网站| 欧美色图片色哟哟| 熟妇熟女亚洲天堂网| 火箭成精品视频884必出精品| 黄色片,com| 动漫av中文| 国产51色综合久久免费| 欧美操逼录像国产黄色国产| 欧美日韩丝袜| 黑人免费福利视频| 精品无码产区一区二| 国产一级黄色片在线观看| chaopen97久久| 日韩另类| 青青免费在线视频一区| 欧美A√综合网| 玖玖玖玖精品国产剧情| 亚洲女人91| 1人人看人人摸人人操| 日本 免费 一区二区三区 久久香蕉 | αⅴ天堂| 日韩欧美女求操每天更新| AV一二区| 激情五月天婷婷| 97网色| 蜜臀AV成人精品蜜臀AV久久| 日本色色的视频| 亚洲欧美国产精品久久久久久久| AV天堂电影网| 五月婷婷色色| 久久精品亚洲成a人天堂| 国产精品国产精品国产| 亚洲污污网站| 97 超碰 人人做 人人爱| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 嗯啊啊啊轻点视频 | 国产一区二区在线播放,久久亚洲精品中文字幕第一区,亚洲精品在线中文字幕视频 | 美女操逼A A| 竹菊一区二区三区AV线| 日本九九久久99| 亚码激情| 五月婷婷综合激情| 99热自拍| 国产精品大香蕉| 日韩色| 男女啊啊啊| 欧美韩日精品资源| 亚洲综合图文| 人人手机欧洲亚洲国产人妻| 欧美性天天影视| 白嫩国模丰满一二三区| 亚洲第2页| 日产欧美电影一区二区三区| 好属操| 久久久久久久久9| 亚洲色图 图片| 欧美熟女激情| 啊啊啊快操我视频| 国产美女激情| 日影院久久婷婷夜夜网| 好屌色综合| 日本一级一级一级一级| 狠狠操夜夜操蜜桃视频三区| 蜜桃色色网站视频三区| 日韩另类色图| 东京热亚洲一区二区| 国产成人精品日本亚洲语言| 立川理惠加勒比无码| 亚洲砖码砖专无区2023| 人妻熟女av国产网站| 国产高潮AA片免费看| 激情综合网五月婷婷| 91人妻Pr| 激情丁香五月婷婷| 日韩欧美天堂| 熟女在线视频| 久久国模av| 国产偷人妻精品一区二区在线| 国产农村妇女精品一二区| 精品97精品97| 熟妇高潮二区三区| 久久久久久久久久久久色网| 少妇久久久久| 国内偷自视频区视频综合| 欧美日韩黄片精品在线| 韩国一级婬片A片AAAAA| 丁香五月婷婷基地| 久草色悠悠在线视频| 午夜啊啊啊| 色香欲天天天天综合色| 亚洲欧美碰碰| 亚洲精品一区二区精品| 在线人成亚洲视频免费观看| 先锋色眉乱伦资源| 啊视频在线| 天天综和| 日韩欧美中文字亚洲慕| 香伊人在线| aⅴ日韩成人电影av在线免费看av大全 | 人人操人人舒服| 小视频玖玖| 欧美日韩91| 欧美亚洲一区二区久久久婷精品大包诱| 91美女视频电影| 黑人综合网| 中文字幕五月婷婷免费| 在线99热| 欧美国产操逼| 亚洲āv网址在线观看| 自拍视频一区在线观看| 熟妇人妻一区二区| 欧美日韩亚洲天堂| 久久久久亚洲Aⅴ无码| 91原创在线观看| 亚欧美无遮挡| 亚洲性爱乱操x| 五月天婷婷综合| 中文字幕文字幕无码一区二区三区电影99| 91人妻在线视频| 亚洲欧美一区二区三区一猛片| 啊啊啊好湿国产一二| 色97欧美| 日本性爱少妇| 97 九色| 美女性91| 操99| 96久久久久久久| 五十路六十路七十路熟婆| 大香蕉伊人色偷偷在线| 91制服丝袜| 综合久久久久久久综合网| 中文字幕一区av| 蜜桃臀一区二区aV| 蜜桃视频成a人v在线| 欧美大香蕉卡久久| 男人午夜天堂| 亚洲AV无码久久久国产精品| 97精品第3页| 国产精品成人AV片免费看网站| 偷拍欧美综合| 国产亚洲色婷婷久久99精品91 - 百度| 日本亚洲熟女视频| 九九九只有精品| 欧美人妻精品一区二区| 天天日熟妇| 久久肏大逼| 欧美图片校园春色| 9色在线| 久久久久女教师免费一区 | 999久久久久久久久| 中文字幕乱在线伦视频中文字幕乱码在线| 超碰精品| 日韩欧美中文日韩欧美色| 九一性生活免费视频| 亚洲最新中文字幕免费| 97资源站国产精品| 伊人天堂在线| 亚洲av无码成电影在线播放| 亚洲综合校园春色| 91在线无码精品秘 软件| 果冻传媒A片麻豆熟妇人妻| 丁香久久| 欧美精品23| 大但人体久久久久| 99日韩| 98久久| 亚洲91网。| 国产成人无码啪| 国产精品乱码久久久久久久久久久久| 成人精品一区二区91毛片不卡| 啊啊啊轻点在线观看| 五月天综合在线| 国产精品人妻无码久久久老鸭窝| 天天超级碰碰碰| 91啪啪| 色黄污美女啪啪啪免费网站| 少妇精品| SUV一区二区在线看| 国产欧美一区激情交| aV中亚| 日韩成人人妻网站| 成年男人的天堂| 成人性爱视频在线看| 久久线上视频免费看| 毛片17S| 抽插无码高清一区| 天天懆天天日| 五十路熟女人妻一区二区三区四区五| ,国产乱人伦精品一区二区三区| 影音先锋视频在线| 色欲av国内精品久久久久久| 欧美视频第二页| 天天综合~91入口| 九色精品视频导航1| 99精品人妻| 男人天堂久久精品不卡| 天天摸天天碰天天添青青| 91一起操| 欧美大香蕉专区网| 精品人妻视频入口| 亚洲在饯| 久9爱精品| 日本久久综合| av天天在线| 男人的天堂2018.| 美国一区二区免费视频| 黄片色区软件| 国产中文字幕在线点播| 色吧5亚洲| 2017天天操天天日| 天天躁夜夜躁狠狠躁AV| 97精品97| 午夜精品久久久久久久99热影院 | 超碰97玖玖爱| 97视频7| 亚洲啪AⅤ永久无码| 日产操逼| 99e久久国产精品| 欧美少妇色图| 国产精品不卡av免费在线观看| 四虎精品永久在线观看| 97人人色| 99精品无码| 亚洲欧美91√| 精品少妇一区二区三区| 亚洲熟妇综合久久久久久| 久久99手机免费视频| 日少妇亚洲版| av东京热男人的天堂| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 热思思免费视频| 哈哈操 大香蕉| 啊啊啊啊好疼| 日韩无码极品| 欧美日韩电影成人在线| 成人无码在线超碰网| 国产日产精品久久快鸭的功能介绍| 国产精品第一区第一页| 日本色色色色色视频| 青娱乐日韩无码| 久久婷婷亚洲| 一区二区久久天天干狠狠| 又黄又粗又硬又长又大| 天天综合麻豆视频| 78操B| www熟女乱伦com| 97欧美日韩综合| 亚洲天堂一区| 亚洲成人无码影院| 激情五月天丁香| 蜜色网色哟哟| 国产精品久久久久久夜夜夜夜| 伊人9| 少妇久久久久久久久| 成人26uuu| 一区二区三区机械有限公司| 欧美内射少妇| 加勒比海成人视频网| 久久中文字幕人妻熟av女蜜柚| 色噜噜狠狠色综无码久久合欧美| 在线视频 亚洲精品| 人干人人人操人人摸| 偷看洗澡一二三区美女| 久久111| 欧美精品三区| 欧美成人免费在线观看| 99人人干| 亚洲自拍青操视频| 亚欧高清| 亚洲影视综合网| 国内成人圈中文字幕无码视频| 欧中美三级一区二区三区| 亚洲天堂五月天国产| 91黑人无码激情在线| 色综合91| 亚洲性刺激| 五月天久久综合网| 伊色综合天堂色97| 2019亚洲男人天堂| 亚洲成人精品在线一区| 五月天色图影视| 欧美日韩系列| 乱欲一区二区| WWW.加勒比人妻一区不卡.com| 欧洲亚洲综合| 手机在线播放国产福利| 久久精彩视频| 一本色道久久综合精品婷婷| 青青草天天亲夜夜操网| 婷婷九月国产| 婷婷丁香五月天综合东京热| 欧美 综合 亚洲| 素人一区二区三区日韩| 第四色色综合91| 欧美78P| 99热网站| 欧美性暴力猛交| 午夜免费福利视频一区| 久久精品综合| 日本99久久| 久热这里| 欧美国产日韩清纯唯美| 日日骚网站| 婷婷五月在线视频| 国产综合日韩伦理| 四虎免费看黄| 黄片免费看的| 中文无线日韩一区| 人妻人人操| 91制服丝袜中文字幕| 99热这里只有精品9| 熟女人妻一区二区三区| 久久久亚洲精品电影免费看| 五月天我淫我色av| 性爱AV天堂| 九月丁香综合网| 欧美日韩制服| 澳门成人网站久国产日韩| 久久国产熟女影院| 91色色综合| 日韩精品1区2区中文字幕| 日韩有码回春沙龙第一页| 韩国黄色片精品久久久| 无码人妻精品酒店| 美女毛片999| 欧洲一级性爱视频在线观看| 亚洲风情综合网| 综合网,亚洲,欧美| 一本久道在线综合视频| 国产91美女视频| 老熟女91av| 国产第25页在线观看| 人妻少妇精品| 欧美激情亚洲情色| 精品超碰中文在线| 成人性爱视频在线看| 久久久久久久久久久久色网| 亚洲欧洲色情高清| 99自拍视频在线| 91深夜夜| 在线视频97| 中文熟女五十乱码在线| 毛片视频白嫩| 欧美亚洲尤物久久| 啊啊啊啊啊啊好多水| 91AV天美在线视频| 五月天春色激情网| 婷婷影院入口| 日韩欧洲操屄视频| 美女t无毒不卡不卡| 九九夜精品九九在线| 99ri精品| 国产AV超爽| 久久亚洲欧美中文字幕国语| 亚洲在线a| 99在线啪| 91精品人妻一区二区三区蜜桃臀| 午夜精品探花| 国产一级特黄大片处女| 国产在线激情| 亚洲诱惑天堂 | AV女资源| 欧美激情一| 欧美熟女丝袜| 91日日| 人妻啊啊人妻啊啊| 欧美 亚洲 偷拍自拍| 天天躁日日躁xxxxx| 国产欧美在线观看免费观看| 伊香蕉综合久久久久久久噜噜噜| 热久久无毒不卡| 国产一区二区久久| 91jk色拍| 亚洲国产一区二区三区在线| 欧美久久伊人| 97最新在线播放视频| 激情接吻视频久久久久久| 先锋色眉乱伦资源| 欧美黑人精品在线播放| 欧美大香蕉同搞| 成人性爱av| 日韩操逼HD| 国产av激情无码久久天堂| 翔田千里A片一区二区| 欧美天天弄| 亚洲性网| 麻豆视频国产一区二区| 大香蕉黄色一级片免费看| 伊人精品久久网站| 亚洲 国产 精品一区| 伊人激情五月天一区二区| 亚欧性爱ab| 色99视频| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 91香蕉视频在线观看免费| 国产成人亚洲精品无| 啪啪性爱免费视频| 亚洲伊人a线观看视频| 综合国产影视三级| 国产97色在线| 综合国产97| baisiav| 大香蕉在线视频15| 青苹果影院男人的天堂| 亚洲自拍另类丝袜综合| 91少妇通奸网站| 亚洲性刺激| 揉揉揉夜夜| 日韩一级欧美一级国产一级台湾| 人人操人人插人人摸人人干| 成人在线视频网| 亚洲熟妇丝袜在线观看| 老司机久久| 亚洲同性aV综合| 日本一级特级毛片视频| 国产操逼逼网| 久久婷婷色综合一区二区三区| www.高清无码诱惑一区.com| 熟女少妇一区二区三区| 青娱乐亚洲自拍| 黑操B| 天天操天天日青青草超碰av| 色九久| 97免费在线视频| 亚洲国产精品无码AV在线| 婷婷五月天网| 91色综合色| 亚洲风情在线观看| 婷婷视频在线免费观看| 男人天堂.AB| 韩国嫰模上门援交视频| 久久性生大片免费观看性| 一区三区啪啪| 一区二区三区蜜桃成人撸久久东京热| 国产一二三福利视频网| 欧美日韩性爱无码| 1204av韩国| 深爱伊人影院| 久久肏大逼| 欧美亚男人的天堂| 羞涩视频| www.狠狠干.coom | 可以在线观看AV的网站| 欧美日韩黄色片一区二区三区四区人与兽做爱 | 玖日综合网| 岛国免费黄色网址| 日欧美色| 亚洲第一页第二页激情| 欧美日韩情色一区二区| 亚洲中文字幕av| 国产亚洲禁久一区二区| 91 综合 色| 天天操人人操狠狠插| 91精品人妻一区二区-全集完整版免费正片国语-B02AV | 在线视频一区二区传媒| 久热伊人| 日本一本道A级黄色毛片试看60分钟| xxx亚洲午夜天堂| 欧美在线亚洲| 黄色在线网站| 午夜后入| 国产第25页在线观看| 国产情色在线| 亚洲密乳AV| 日日黄色三级网站| 中文字幕一区二区三区高清| 欧美色图97| 亚洲欧美经典一区二区 | 欧美亚洲玖玖玖| 骚货操死你| 午夜精品一区二区三区三上悠亚| 精品视频在线观看| 使劲用力艹少妇视频一区二区| 无码WWW免费视频网站| 97欧美久久久久久久| 日本精品一区二区中文字幕| 清纯唯美第一页| 中文字幕日本久久| 日本欧美中文字幕| 国产成人主播| 精品久久人妻成人网| 亚洲乱熟女一区二区| 制服乱伦| 大JI巴好深好爽又大又粗视频| 黑人中出21连凳花野真衣| 蜜乳AV一区| 俺去啦自拍| 久久五月份| 亚洲中文字幕精品一区| 国产 大胆 对白| 噜噜在线| 男女激情黄色网址| av亚欧| 色天堂在线观看| 亚洲色天堂日韩中| 国产成人欧美精品在线| 亚洲欧美日产国产91毛片| 美女自卫慰黄网站免费| 国产在线综合福利网站| 啊啊啊不要啊啊受不了了视频在线 | 亚洲一区二区久久久久| 97国产中文| 男人亚洲91首页在线| AV网站高清无码在线观看| 亚洲中文字幕av | 日韩久久三区| 最近2019中文字幕国语免费版| 日韩一级二级三级免费看完整版| 国产美女激情| 精品少妇后入一区二区三区四区人妻巨乳| 久久亚洲AV无码专区首页| 91亚洲人| www.久久超碰| 1204金沙人妻懂旧版免费| 大香樵伊人网| 92人人操人人| 91久久九九精品国产综合| 超碰碰97资源站| 91色伦| 欧美熟女丝袜| 中文字幕制服欧美久久一区| 天天欧美欧美亚洲网| 中文字幕亚洲永久精品| 女人久久久| 另类欧美色| 夜夜春夜夜操| 欧洲大香蕉| 91 丝袜在线观看| 啊啊啊 在线观看| 色人久久| 99国产精品人妻人伦| 超AV色女| 99RE在线视频精品,这里只有精品| 美国美女AV在线| 天天影视综合网欧美精品| 久久久性爱视频| 青青草操逼逼视频| 大香交伊人网| 亚洲操逼网| 激情五月婷婷综合| 婷婷激情啪啪| 天天插天天插| 秋霞视频一区二区| 激情丁香五月| 人妻久久久久久久久久久久久久久| 看一级黄色视频| 在线人人人人人人精品超 | 在线观看无码三级少妇| 狠狠色狠狠色狠狠五月| 国产三级中文有码在线视频| 国产精品区在线12p| 乱伦日本中文自拍| 亚洲色图尤物视频| 久久久久亚洲Aⅴ无码| 337p大胆噜噜噜噜噜91Av| 中文字幕 码 自拍 视频 区| 天堂精品在线| 九一综合精品视品av| 亚洲射综合网| 99热线麻豆 | 五月婷婷丁香| 丝袜狠狠草尤物人妻av91| 亚洲欧洲色情高清| 98超碰欧美| 中国91AV| 香蕉国产精品麻豆亚洲欧美日韩| 以及麻豆国产入口在线观看免费| 思思热免费在线视频| 唐山老熟妇露脸啪啪叫| 亚洲男人的天堂亚洲| 欧美中文字幕一区 | 久久久久久精品免费看A级| 五月丁香色婷婷| 绯色AV粉色AV蜜臀AV| 午夜精品久久999热蜜桃介男人用| 日日骚AV| 免费日韩黄片| 久久午夜伦| 亚洲人码13| 欧美日韩大香蕉| 色五月首页| 亚洲色图欧美色图制服诱惑| 亚洲不卡三级手机播放| 人人考人人摸人人干| 最新精品久久蜜桃| 熟女熟妇一区二区三四区| 伊人精品久久网站| 禁片 高清 在线观看视频网站| 欧美高潮| 在线观看AV片| 99色婷婷中文字幕乱色| 91色图| 五月婷婷六月丁香| 久久精品综合| 狼狼色丁香久久婷婷综合五月| 国产精品经典一卡久久久 | 91成人久久| 欧美熟妇成人一区二区| 久久久久久中文字幕中文字幕最新| 天天综合网亚洲综合网| 中国大陆国产高清AⅤ毛片| 成人影 天天操 亚洲| 97超碰人妻| 久久精品中文字幕无码l| 99精品丰满人妻| 久久色网| 国产有码一区| 久久久久久久强迫| 熟妇视频一区二区三区在线观看| 久久尹人大香焦视| 无码9区| 久9无限国产| 精品国产乱码久久久久A| 精品国产AV一区天美传媒| 激情五月综合网| 情色大香蕉| 色婷婷五月综合| 天天肏视频| 一区黄二区黄| 亚洲图片色图欧美另类| a人欧美综合天堂麻豆| 人妻81p| 九区国产| 色99视频| 亚洲啪啪综合?v一区综合精品区| 小草精彩毛片| 欧美91精品国产自产| 97色插| 久久社区一区二区三区| 夜夜做夜夜爽精品视频| 五月婷婷六月天| 草草草视频在线免费看| 加勒比海成人视频网| 曰韩成人免费视频| 久热影视| 91亚洲人电影| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | oumeizonghese,www| 国产毛片在线| 中文字幕av片| 久久久久无码| 欧美性爱第一区| 久久日韩肥臀| 福利偷拍视频-中文字幕2019国语完整视频大全-S91AV | 91综合色噜噜| 日本精品免费一区二区三区四区| 久久午夜鲁丝片| 少妇精品久久久| 五月天综合网| 中文字幕AV乱伦| 91熟女.com| 婷婷五月天av| 大屁股人妻女教师撅着屁股| 精品妇操一区二区三区| 婷婷丁香久久| 成人免费视瓶| 欧美人妻熟女在线| 日韩在线视频1234| 亚洲日韩精品一区视频在线| 久久久久久999| 天天综合网1| 少妇超碰在线| 亚洲欧洲精品视频发布| 曰韩操B| 国产性爱欧美性爱在线| 日本超碰在线国产一区| 强奸国产精品视频| 啊啊啊啊操死我| 国产超碰国产97| 爆操无码| 成 人片 黄色大片| 久久人妻| 91痴汉| 96久久久精品| 麻豆天美传媒在线视频天堂| 床上啊啊啊一区二区三区| 日本中文字幕不卡视频| 福利大香蕉| 欧美18禁91| 99热超碰| 色小视频蜜乳| 亚洲精品无码少妇久久| 啪啪资源网| 韩三级a视频在线观看| 综合久久少妇中文字幕| 精品久久久一本一道| 日韩资源网| 久久久久一本一区二区青青蜜月| 丁香五月天婷婷姐| 97中文超碰| 艹我哪美一区无码| 99色| 91neishe| 东北夫妻性偷拍| 91女在线观看| 看看小穴| 啪啪91| 五月丁香综合网| 99热婷婷| 久久黄黄| 天天干2区3区| av操操不卡| 99啪啪| 超碰97久久观看| 韩国嫰模上门援交视频| 东京热大香焦| 中文字幕色AV| 国产97色在线 | 亚洲| 亚洲天堂资源网| 在线观看中文字幕| 色网站导航大全| 日本免费一级AAA大片器| α√在线| 97色色婷婷| 精品视频日日夜夜| 欧美高潮在线| 97伦乱| 亚洲第一页色网| 91麻豆天美| 日韩av一级黄片| 色五月首页| 亚州少妇| 蜜桃色院一区久久 | 青娱乐91| 97人人夜夜精品视频| 玖玖玖玖精品国产剧情| 狠狠狠狠狠干| 亚洲最大的黄色电影网站。| 亚洲日韩XXX| 网友自拍第1页| 国产美女口爆吞精视频| 天天草天天干天天日| 天天爽爽爽爽| 欧美日韩另类字幕中文| 精品少妇99| 亚洲国产ⅴ高清在线观看| 日韩精品国产精品五码一区二区| 欧美亚洲国产自久久| 精品9999| 国产91乱伦| 91人妻爽爽人人做人人澡| 97亚洲欧美日韩| 日韩欧美女求操每天更新| 亚洲āv网址在线观看| 日本亚洲熟女视频| 东北女人被操| 精品人妻一区二区蜜桃视频| 免费黄色片。| 发朗少妇买婬全视频中文| 青青草日本中文字幕| 国产美女自拍视频| 大香网站| 亚洲中文字幕日产无码久久| 后入式免费视频| 亚洲中文一区二区三区视频| 青青草视频久久久久| 久草看看看| 日韩少妇一区二区三区| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 蜜桃午夜视频一区二区| 国产成人超碰在线| 久久久98网站免费视频| 久热伊人| 国产精品亚洲一区二区三区四区| 日韩欧美丝袜诱惑| 久久久夜夜夜| JULIA一区二区三区在线播放| 美性中文综合网| 国产欧美精选自拍一区| 蜜臀99999| 青青操网| 中文字幕免费观看| 成全动漫视频观看免费下载| 亚洲欧洲小说图片视频 | 国产高清自拍| av资源在线播放天堂| 日本在线15p| 乱老女人一区二区视频| 亚洲男人天堂视频| 午夜黄色免费在线观看| 狠色婷婷久久一区二区三区_| 做爱A级亚欧| 97视频新免费| 国产精品一区二区三区,亚洲综合| 91超碰碰在线| 18禁网站在线播放| 久久久少妇诱惑精品视频| 91天堂色男人的天堂| 白嫩妹子国产骚| 色情综合网| 亚洲图片欧美| 9热9热综合网| 操高情无码| 91精品人妻一品二品三品| 久久国产三区| 人人操人人色人人摸| 东京热熟女亚洲视频网站| 九九探花视频在线观看| 欧美 亚洲 综合 制服 另类| 99re公开精品免费视频| 日韩大香蕉AV影片| 情色av电影| 欧美性爱一级操| 欧美天天综合网版| 性性欧美| 色色热| av在线一区二区三区| 91天堂| www.高清无码诱惑一区.com| 色综合av男人天堂| 91成人18| 天天看少妇| 国产精品一级毛片不卡视| 亚洲欧美人妻| 国产精品3| 最新国产亚洲精品精品国产亚洲综合| 精品夜夜澡人妻无码AV| 97综合国产精品高潮久久| 蜜乳AV一区| 视频不卡中文字幕| 成人一级二级| 99青草| 97久久久| 国产一级操B视频| 思思热在线视频免费| 精品熟妇视频一区二区| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 国产精品视频内谢女人| 偷拍新久久| 91久久国产综合精品| 好淫网一二三视区| 艹少妇网站| 日韩欧美大力操| 99精品九九九九九九| 亚洲资源网| 欧美性,色九九| 综合日本女人伊人| 操逼逼无码| 国产一区二区精品久久99| 欧美日韩国产成人高清| 国产精品96久久久久久| 欧美色图91| 日本精品一区二区不卡| 国产自啪精品视频网站黑丝| 一二三四视频在线社区中文字幕| 日本一区三级韩国| 91大学精品激情戏| 国产精选三级在线观看| 国产区性爱在线视频秋霞豆| 国产又黄又粗的视频| 欧美的性爱网站免费| 日本中文字幕不卡视频| 夜夜高潮夜夜爽夜夜爱爱一区| 久久久久久99999国产精品| 97欧美色综合| 97超碰伊人| 综合亚洲网| 视频在线97| 亚洲交性| 91色花堂| 蜜桃久久一区二区| 夫妻天天操岛国视频| 人妻丝袜美腿中文字幕| 欧美亚洲情色| 综合伊人网12色| 国产精品成人久久一区二区三区 | 国产按摩一区二区三区| 夜夜嗨一区二区| 亚洲最大的黄色电影网站。| 人妻无码后入| 日本中文字幕一区| 青青草依人大香蕉| 97亚洲精品| 第四色奇米影视777| 国产精品国产自产高清AV| 黄色免费网页无码| 国产免费一区二区在线A片视频| 婷婷操逼| 久视频在线观看| 日韩视频小说在线观看| 无卡一区=区| 超碰95| 中文字幕一区二区在线日韩精品| 日本精品高清一二区一本到| 伊人久久青青草| 亚洲色情在线影视| 国产AB视频| 青青青国产手线观看视频2| 911av网站免费观看| 99色视频| 日本三级日本三级三级人妇四虎| 亚洲污污网站| 麻豆精品一区二区三区四区免费观看| 亚洲欧美国产中文视频| 福利在线观看一区二区| 精品一区二区亚洲国产| 亚洲美欧999| 午夜无码熟妇丰满人妻| 精品亚洲| 91free福利| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 91超级碰碰| 色香在线| 欧美日本成人一区二区| 日韩av不卡在线看| 美女刺激久久国产欧美| 亚洲精品蜜桃久久久久久久| 清纯唯美亚洲综合| 欧美,日韩,亚洲视频| 成人色女网| 天天综合~91| 99日韩| 天海翼久久| 国产亚洲精品一区二区三区| 久久五月丁香| 碰人碰碰人人开房人肉| 97超碰精品| 亚洲精品中文字幕一区在线视频| 天天日天天舔东京热| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 久久鲁干| 欧美午夜色妇色鬼| 久久夜夜| 长长久久免费视频| 97亚洲综合在线| aaaa少妇高潮大片| 色眯眯av| 亚洲激情在线观看一区| 91久久18禁| 亚洲国产av中文字幕久久| 超碰人妻久久人妻中文97| 国产91亚洲精品一区二区三区| 天堂av2019| 日本欧美中文字幕| 黄总AV色图| 先锋激情∨在线视频播放| 禁十八久久| 日韩激情啪啪啪| 玖玖爱伊人玖玖爱| 精品高清一区二区三区三州| 久草精品一区 | 蜜桃臀久久| 熟女人妻一区二区三区| 极品肉射| 日va操| 一二三四区电影| 亚洲图片激情综合另类| 欧美91网站| 日韩激情啪啪啪| 91热色| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 99热这里只有精品1| 久久老子无码午夜伦不卡| 久久精品无码专区| 中文字幕第页| 精品人妻视频入口| 国产精品一区二区后入| 男女激情黄色网址| 欧美性天天影院| 91精品人妻电影| 亚洲丰满很很操| 青草草免费网站av| 欲射影视| 亚洲色图殴美色图激情乱伦| 一区二区三区四区五区久久久久久| 五月丁香影视| 无码直播久久久| 四虎884| 久久人妻视频| 92性色国产午夜福利在线661| 欧美日本不卡| 色玖玖| 日韩卡一卡二卡三在线| 中文乱码字幕观看| 一本色道久久综合熟妇| 少妇 综合| 嫩草美女久久| 婷婷爽人人婷婷爽视频| 1000午夜黄色| 狼人综合婷婷激情四射 | 日韩三级视频一区二区三区| 日韩不卡在线一区二区| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 亚洲欧美日韩二区视频| 日本二三四区| 丝袜狂射91| 妇女视频网站| 又黄又爽在线观看视频 | 欧美亚洲厕所精品偷拍91 | 香蕉av一区二区三区| 九九九综合精品| 97天堂| 国产女生在线| 日本午夜操逼| jazzjazz国产精品麻豆| 久久精品熟妇丰满人妻99| 欧美九九九| 久操免费电影| 中文字幕欧美日本乱码一线二线| 神马久久中文字幕| 国精品一区二区三| 亚洲精品国产精品乱码不99| 无码高清专| 2020中文在线一区二区三区| 91欧美大片| 国产精品天堂| 友优传媒精品在线一区二区| 变态另类专区| 中文字幕二区日韩天堂| 日本三级黄页| 亚洲美乱| 9久综合网| 99欧美| 欧美亚洲丝袜人妻制服99| 色综合天天| 91在线美女| 中文字幕一区 二 区 三 四 五 区日 日 骚 | 欧洲Au麻豆|