mysql - 選課系統(tǒng)數(shù)據(jù)庫(kù)課程數(shù)據(jù)表的設(shè)計(jì)?
問(wèn)題描述
大概就是一個(gè)選課系統(tǒng)的網(wǎng)站,其中要實(shí)現(xiàn)學(xué)生選課的功能,一般課程的時(shí)間都是周X 第X節(jié)到第X節(jié),然后我就不知道數(shù)據(jù)表里面的time字段該怎么搞了。。。
感覺(jué)放date類型也不對(duì),放string類型也很怪,而且還要展示學(xué)生的課表,到時(shí)候肯定還是按時(shí)間來(lái)展示的。。所以求指點(diǎn)這個(gè)字段該怎么設(shè)計(jì)?
問(wèn)題解答
回答1:你可以把課程,學(xué)生,日程表,選課關(guān)系分開(kāi)放四個(gè)表。
課程表 課程ID 課程名稱 講師姓名 第幾周到第幾周 ...
學(xué)生 學(xué)生ID 學(xué)生姓名 ...
日程表 日程ID 課程ID 星期幾 第幾節(jié)課 ...
選課關(guān)系 選課關(guān)系ID 學(xué)生ID 課程ID
這樣下來(lái)你知道學(xué)生姓名,想要搜索明天下午要上那些課就這么干:從學(xué)生表中根據(jù)姓名獲取學(xué)生ID,從選課關(guān)系根據(jù)學(xué)生ID得到他選過(guò)的所有課程的課程ID,從課程表根據(jù)課程ID獲取該每個(gè)課程的開(kāi)始和結(jié)束時(shí)間,保留符合明天日期的那些課程。再?gòu)娜粘瘫砀鶕?jù)課程ID獲取明天下午可能要上的課程。大概就這樣吧我想的。我也沒(méi)做過(guò)這種的,大概猜測(cè)了下。希望有幫助。
相關(guān)文章:
1. 如何解決docker宿主機(jī)無(wú)法訪問(wèn)容器中的服務(wù)?2. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個(gè)是怎么回事????3. javascript - 請(qǐng)指條明路,angular的$event,在select中卻是undefined?4. 如何修改vim插件vimwiki中Vimwiki2HTML的一些細(xì)節(jié)5. javascript - JS事件委托問(wèn)題6. javascript - 關(guān)于jquery的remove()方法7. JavaScript中怎么理解=、==和===8. java - Spring事務(wù)回滾問(wèn)題9. javascript - vue.js如何遞歸渲染組件.10. mongodb - Mongo java驅(qū)動(dòng)中,有沒(méi)有封裝好的函數(shù),可以直接取到文檔中的某個(gè)具體的值,而不是一個(gè)文檔?或者有沒(méi)有方法實(shí)現(xiàn)??
