系統(tǒng)分析與設(shè)計(jì) Lesson 7 作業(yè)

1. 領(lǐng)域建模

a. 閱讀Asg_RH文檔,按用例構(gòu)建領(lǐng)域模型

image.png

b. 數(shù)據(jù)庫建模(E-R模型)

image.png

導(dǎo)出SQL

-- MySQL Script generated by MySQL Workbench
-- Sun Apr 29 08:46:12 2018
-- Model: New Model    Version: 1.0
-- MySQL Workbench Forward Engineering

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';

-- -----------------------------------------------------
-- Schema mydb
-- -----------------------------------------------------

-- -----------------------------------------------------
-- Schema mydb
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET utf8 ;
USE `mydb` ;

-- -----------------------------------------------------
-- Table `mydb`.`Traveller`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Traveller` (
  `id` INT NOT NULL AUTO_INCREMENT,
  `email` VARCHAR(45) NOT NULL,
  `password` VARCHAR(45) NOT NULL,
  PRIMARY KEY (`id`))
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `mydb`.`CreditCard`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`CreditCard` (
  `creditcard_id` INT NOT NULL AUTO_INCREMENT,
  `traveller_id` INT NOT NULL,
  `card_number` VARCHAR(45) NOT NULL,
  PRIMARY KEY (`creditcard_id`, `traveller_id`),
  INDEX `fk_CreditCard_Traveller1_idx` (`traveller_id` ASC),
  CONSTRAINT `fk_CreditCard_Traveller1`
    FOREIGN KEY (`traveller_id`)
    REFERENCES `mydb`.`Traveller` (`id`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `mydb`.`Destination`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Destination` (
  `destination_id` INT NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(45) NOT NULL,
  PRIMARY KEY (`destination_id`))
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `mydb`.`Hotel`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Hotel` (
  `hotel_id` INT NOT NULL AUTO_INCREMENT,
  `destination_id` INT NOT NULL,
  `name` VARCHAR(45) NOT NULL,
  PRIMARY KEY (`hotel_id`, `destination_id`),
  INDEX `fk_Hotel_Destination1_idx` (`destination_id` ASC),
  CONSTRAINT `fk_Hotel_Destination1`
    FOREIGN KEY (`destination_id`)
    REFERENCES `mydb`.`Destination` (`destination_id`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `mydb`.`Room`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Room` (
  `room_id` INT NOT NULL AUTO_INCREMENT,
  `hotel_id` INT NOT NULL,
  `price` DOUBLE NOT NULL,
  PRIMARY KEY (`room_id`, `hotel_id`),
  INDEX `fk_Room_Hotel_idx` (`hotel_id` ASC),
  CONSTRAINT `fk_Room_Hotel`
    FOREIGN KEY (`hotel_id`)
    REFERENCES `mydb`.`Hotel` (`hotel_id`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `mydb`.`Reservation`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Reservation` (
  `reservation_id` INT NOT NULL AUTO_INCREMENT,
  `room_id` INT NOT NULL,
  `hotel_id` INT NOT NULL,
  `creditcard_id` INT NOT NULL,
  `traveller_id` INT NOT NULL,
  `checkin_time` DATETIME NOT NULL,
  `checkout_time` DATETIME NOT NULL,
  `table1col` VARCHAR(45) NULL,
  PRIMARY KEY (`reservation_id`, `room_id`, `hotel_id`, `creditcard_id`, `traveller_id`),
  INDEX `fk_Reservation_Room1_idx` (`room_id` ASC, `hotel_id` ASC),
  INDEX `fk_Reservation_CreditCard1_idx` (`creditcard_id` ASC, `traveller_id` ASC),
  CONSTRAINT `fk_Reservation_Room1`
    FOREIGN KEY (`room_id` , `hotel_id`)
    REFERENCES `mydb`.`Room` (`room_id` , `hotel_id`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  CONSTRAINT `fk_Reservation_CreditCard1`
    FOREIGN KEY (`creditcard_id` , `traveller_id`)
    REFERENCES `mydb`.`CreditCard` (`creditcard_id` , `traveller_id`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;


SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;

數(shù)據(jù)庫邏輯模型 與 領(lǐng)域模型 的異同

  • 數(shù)據(jù)庫邏輯模型每個(gè)實(shí)體的屬性都考慮數(shù)據(jù)類型含长,而領(lǐng)域模型不需要
  • 數(shù)據(jù)庫邏輯模型需要考慮實(shí)體之間的主鍵或外鍵關(guān)聯(lián)澄成,比領(lǐng)域模型只考慮一對(duì)一還是一對(duì)多的關(guān)系
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末张抄,一起剝皮案震驚了整個(gè)濱河市忆首,隨后出現(xiàn)的幾起案子褒纲,更是在濱河造成了極大的恐慌汤锨,老刑警劉巖办铡,帶你破解...
    沈念sama閱讀 221,548評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件辞做,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡寡具,警方通過查閱死者的電腦和手機(jī)秤茅,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來童叠,“玉大人框喳,你說我怎么就攤上這事。” “怎么了五垮?”我有些...
    開封第一講書人閱讀 167,990評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵撰豺,是天一觀的道長。 經(jīng)常有香客問我拼余,道長污桦,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,618評(píng)論 1 296
  • 正文 為了忘掉前任匙监,我火速辦了婚禮凡橱,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘亭姥。我一直安慰自己稼钩,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,618評(píng)論 6 397
  • 文/花漫 我一把揭開白布达罗。 她就那樣靜靜地躺著坝撑,像睡著了一般。 火紅的嫁衣襯著肌膚如雪粮揉。 梳的紋絲不亂的頭發(fā)上巡李,一...
    開封第一講書人閱讀 52,246評(píng)論 1 308
  • 那天,我揣著相機(jī)與錄音扶认,去河邊找鬼侨拦。 笑死,一個(gè)胖子當(dāng)著我的面吹牛辐宾,可吹牛的內(nèi)容都是我干的狱从。 我是一名探鬼主播,決...
    沈念sama閱讀 40,819評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼叠纹,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼季研!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起誉察,我...
    開封第一講書人閱讀 39,725評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤与涡,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后冒窍,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體递沪,經(jīng)...
    沈念sama閱讀 46,268評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,356評(píng)論 3 340
  • 正文 我和宋清朗相戀三年综液,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了款慨。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,488評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡谬莹,死狀恐怖檩奠,靈堂內(nèi)的尸體忽然破棺而出桩了,到底是詐尸還是另有隱情,我是刑警寧澤埠戳,帶...
    沈念sama閱讀 36,181評(píng)論 5 350
  • 正文 年R本政府宣布井誉,位于F島的核電站,受9級(jí)特大地震影響整胃,放射性物質(zhì)發(fā)生泄漏颗圣。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,862評(píng)論 3 333
  • 文/蒙蒙 一屁使、第九天 我趴在偏房一處隱蔽的房頂上張望在岂。 院中可真熱鬧,春花似錦蛮寂、人聲如沸蔽午。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,331評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽及老。三九已至,卻和暖如春范抓,著一層夾襖步出監(jiān)牢的瞬間骄恶,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,445評(píng)論 1 272
  • 我被黑心中介騙來泰國打工尉咕, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留叠蝇,地道東北人璃岳。 一個(gè)月前我還...
    沈念sama閱讀 48,897評(píng)論 3 376
  • 正文 我出身青樓年缎,卻偏偏與公主長得像,于是被迫代替她去往敵國和親铃慷。 傳聞我的和親對(duì)象是個(gè)殘疾皇子单芜,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,500評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • 1.簡單題 1.1 簡述瀑布模型、增量模型犁柜、螺旋模型(含原型方法)的優(yōu)缺點(diǎn) 1.2 簡述UP的三大特點(diǎn)洲鸠,其中哪些內(nèi)...
    Andiedie閱讀 220評(píng)論 0 0
  • 1.簡單題 1.1 軟件工程的定義 將系統(tǒng)化的、規(guī)范的馋缅、可度量的方法用于軟件的開發(fā)扒腕、運(yùn)行和維護(hù)的過程,即將工程化應(yīng)...
    Andiedie閱讀 308評(píng)論 0 0
  • 1. 用例建模 1.1. 繪制Asg_RH Task1用例圖 1.2. 繪制熟悉的旅館服務(wù)用例圖 新的用例是黃色的...
    Andiedie閱讀 183評(píng)論 0 0
  • 一萤悴、社會(huì)化營銷案例: OFO想請(qǐng)一群年輕人讀北大 1瘾腰、營銷內(nèi)容: 聯(lián)合北京大學(xué)光華管理學(xué)院重啟“X計(jì)劃”——申請(qǐng)即...
    理為閱讀 119評(píng)論 0 0
  • 我知道孔子、孟子覆履、老子蹋盆、莊子费薄,鬼谷子?鬼谷子隱隱覺得是不是算命的栖雾? 學(xué)生從圖書館抱回200本書楞抡,都是他們精...
    和顏悅色lxy閱讀 696評(píng)論 0 2