整個專案只有四張表
book-書籍主表,記錄書籍的詳情信息,包括類別,作者描述等
type-類別表,書籍類別管理
menu-目錄章節表
properties-設定表
##book表是書籍主表code:用於圖書code記錄,可認為該欄位能確定圖書唯一typeId:關聯type表主鍵id,標識圖書類別title :書名author:作者lastMenuId:最新章節目錄,關聯menu表主鍵iddescription:圖書描述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的值,在首頁做跑馬燈顯示
此處給出表建立腳本,供大家參考:
<br/>
ET 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;
以上是java的資料庫表結構的詳細內容。更多資訊請關注PHP中文網其他相關文章!