整個項目只有四張表 book-書籍主表,記錄書籍的詳情信息,包括類別,作者描述等 type-類別表,書籍類別管理 menu-目錄章節表 properties-配置表 book表是書籍主表 code:用於圖書code記錄,可認為該欄位能確定圖書唯一 typeId:關聯type表主鍵id,標識圖書類別 ...
整個項目只有四張表
book-書籍主表,記錄書籍的詳情信息,包括類別,作者描述等
type-類別表,書籍類別管理
menu-目錄章節表
properties-配置表
book表是書籍主表
code:用於圖書code記錄,可認為該欄位能確定圖書唯一
typeId:關聯type表主鍵id,標識圖書類別
title:書名
author:作者
lastMenuId:最新章節目錄,關聯menu表主鍵id
description:圖書描述
originalUrl(廢棄不用)
imageUri:圖片地址,這個地址是相對地址。記錄了圖書展示圖片的文件名
createTime:圖書錄入時間
updateTime:最後更新時間
rootTypeId:主類別id,tpye表主鍵id,詳情看type表記錄
menuNum:圖書目錄數量
textSize:當前圖書有多少字
menu章節表:
description:章節名
prevMenuId:上一章節id(menu表主鍵id)
nextMenuId:下一章節id(menu表主鍵id)
bookId:圖書id(book表主鍵id)
contentUri:正文地址(此地址是正文文件存儲在伺服器上的地址)
createTime:章節錄入時間
code :章節編碼(沒有具體作用)
mversion:章節版本控制(防止重覆錄入)
type表為圖書類別表:
description:類別描述
level:類別等級
parentId:所屬父類別
類別建立如上所述,level為1的是主類別,其下lever為2的即為子類別。子類別的parentId關聯父類別的主鍵id。主類別沒有父類別,即parentId為0
這裡需要提一點的是,父類主鍵*100再遞增作為子類別的主鍵id。如id為101的父類別的id為1
properties表做配置用,考慮下一版本將程式里的配置放在properties里。
現在這張表只有一條配置
pKey:為程式讀取到相應pValue的值,在首頁做跑馬燈顯示
此處給出表創建腳本,供大家參考:
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- Table structure for book -- ---------------------------- DROP TABLE IF EXISTS `book`; CREATE TABLE `book` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '圖書主表', `code` varchar(45) COLLATE utf8_bin DEFAULT NULL COMMENT '圖書編碼(預設圖書目錄地址,也是圖書文件保留目錄)', `typeId` int(11) DEFAULT NULL COMMENT '類別', `title` varchar(45) COLLATE utf8_bin DEFAULT NULL COMMENT '書名', `author` varchar(45) COLLATE utf8_bin DEFAULT NULL COMMENT '作者', `lastMenuId` int(11) DEFAULT '0' COMMENT '最新章節目錄Id', `description` varchar(500) COLLATE utf8_bin DEFAULT NULL COMMENT '簡介描述', `originalUrl` varchar(200) COLLATE utf8_bin DEFAULT NULL COMMENT '已廢棄', `imageUri` varchar(45) COLLATE utf8_bin DEFAULT NULL COMMENT '圖片地址', `createTime` timestamp NULL DEFAULT NULL COMMENT '創建時間', `updateTime` timestamp NULL DEFAULT NULL COMMENT '更新時間', `rootTypeId` int(11) DEFAULT NULL COMMENT '主類別', `menuNum` int(11) DEFAULT '0' COMMENT '章節總數', `textSize` bigint(18) DEFAULT '0' COMMENT '小說字數', PRIMARY KEY (`id`), UNIQUE KEY `index_title` (`code`) USING BTREE, KEY `FK_mxn08ipa84r1evyt2cnn7jkpi` (`typeId`,`rootTypeId`), KEY `FK_6ji3nbliycexuj771dlqn25s3` (`lastMenuId`) ) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 COLLATE=utf8_bin; -- ---------------------------- -- Table structure for menu -- ---------------------------- DROP TABLE IF EXISTS `menu`; CREATE TABLE `menu` ( `id` int(11) NOT NULL AUTO_INCREMENT, `description` varchar(100) COLLATE utf8_bin DEFAULT NULL COMMENT '描述', `prevMenuId` int(11) DEFAULT '0' COMMENT '上一章id', `nextMenuId` int(11) DEFAULT '0' COMMENT '下一章id', `bookId` int(11) DEFAULT NULL COMMENT '圖書id', `contentUri` varchar(100) COLLATE utf8_bin DEFAULT NULL COMMENT '文本路徑', `createTime` timestamp NULL DEFAULT NULL COMMENT '創建時間', `code` varchar(45) COLLATE utf8_bin DEFAULT NULL COMMENT '編碼(做索引)', `mversion` varchar(45) COLLATE utf8_bin DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `mvserion` (`mversion`) USING BTREE, KEY `FK_c6rhyxr26doitte59912cid6v` (`bookId`), CONSTRAINT `menu_ibfk_1` FOREIGN KEY (`bookId`) REFERENCES `book` (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=231 DEFAULT CHARSET=utf8 COLLATE=utf8_bin; -- ---------------------------- -- Table structure for properties -- ---------------------------- DROP TABLE IF EXISTS `properties`; CREATE TABLE `properties` ( `id` int(11) NOT NULL AUTO_INCREMENT, `pKey` varchar(45) COLLATE utf8_bin NOT NULL, `pValue` varchar(256) COLLATE utf8_bin NOT NULL, `description` varchar(45) COLLATE utf8_bin DEFAULT NULL COMMENT '描述', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_bin; -- ---------------------------- -- Table structure for type -- ---------------------------- DROP TABLE IF EXISTS `type`; CREATE TABLE `type` ( `id` int(11) NOT NULL AUTO_INCREMENT, `description` varchar(45) COLLATE utf8_bin DEFAULT NULL COMMENT '類別描述', `level` int(11) DEFAULT NULL COMMENT '類別等級', `parentId` int(11) unsigned DEFAULT '0' COMMENT '父類別', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=702 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;