當前位置:首頁 » 發表方式 » 開發表結構

開發表結構

發布時間: 2021-03-10 07:37:01

A. 如何優雅的進行表結構設計

資料庫表的命名
使用名詞作為表名
仔細想想便可發現,資料庫表中存在的所有數據都是現實世界各種操作的結果,它們有的是中間過程結果,有的是最終數據結果。不論怎樣,它們是一份一份沒有任何動作的,靜態的記錄。而表本身就是存儲這些記錄的容器,從這樣的層面理解,表名應該採用名詞的形式是完全符合邏輯的。
比如我們要設計一個存儲用戶邀請的表,invitation 就比 invite 更加的優雅。
相關表採用統一前綴
我們知道,大型系統的設計往往按模塊或者子系統進行劃分,一個一個模塊的處理問題,保證模塊間的低耦合,模塊內的高內聚。資料庫表設計也一樣,我們可以對相關聯的表採用相同的前綴,使開發人員一眼看上去就知道哪幾個表是相關的。
比如對於用戶基本信息表、用戶的詳細信息表和用戶的微信綁定表如下的命名更可取:
user
user_profile
user_wecha
欄位的命名
本節先介紹幾個比較通用的原則,使得欄位的含義更容易理解,描述性更強,之後進行簡單的總結分類,以便讓我們明白這些原則背後的邏輯。
使用動詞被動形式+描述性後綴
通過前面我們知道,資料庫表中的所有記錄都是靜態的結果性數據,它是由一定的用戶操作產生的。那麼它是如何產生的?經過什麼樣的操作產生的呢?
在解答之前先看一個例子,下面是一個簡單的 article 表結構:
id: integer
title: varchar
content: text
user_id: integer
create_time: timestamp
這樣的設計本身是沒有問題的,目前用的也很多。這個設計主要的問題是沒有體現出 user_id 與這篇文章的關系,需要經過一定的猜測和思考才能得出。create_time 雖然還比較直觀,但沒有體現出這篇文章實在過去的某個時間創建的。
然後我們在來看修改後的設計:
id: integer
title: varchar
content: text
created_by: integer
created_at: timestamp
通過把 user_id 替換為 created_by、create_time 替換為 created_at,使得我們更容易理解對應的文章是被指定的人在指定的時間創建出來的,而不需要我們的多方猜測或者查閱文檔,使得整個表結構的描述性更強。
時間區分當前時間和未來時間
英語中表時間的時候, at 一般跟一個時間點,而 in 有表示在未來的某個時間之內的意思。結合起來,筆者傾向於用 at 表示過去或者現在的時間,而用 in 表示未來的時間。比如日歷中的 event 有開始時間和結束時間的概念,我覺得如下的命名是比較合理的:
starts_at 事件的開始時間,相對 ends_in 它屬於當前時間,採用 _at 後綴
ends_in 事件的結束時間,相對 ends_in 它屬於未來時間,從用 _in 後綴
其他我們比較常用的比如 created_at、updated_at、expires_in 都屬於這種類型。
使用第三人稱單數
當我們採用動詞+介詞的時候我更傾向與使用第三人稱單數,因為欄位描述的這個實體是單數的,通過使用第三人稱單數,我們可以自然語言的方式表達出需要的意思。比如以 event 為例,翻譯成英語是這樣的:
The event starts at 2016-05-05 12:00:00
完全符合英語的語法,也表達了想要表達的意思。
區分單數與復數
單數與復數主要是對欄位內容的描述,比如通知(notification)有接收人這個欄位,如果我們需要通知能夠發送給多個人,那麼 receivers 這樣的欄位名稱明顯好於 receiver,因為 receivers 體現了通知可以發送給多個人這一個事實。
前面從四個原則出發介紹了如何讓欄位更具有描述性,簡單總結下來我覺得從語義上來說,欄位可以分為兩種類型:描述性欄位和動作性欄位。
描述性欄位是對對應資料庫記錄(或者說實體)的補充說明,比如以人作為實體,那麼人的身高、體重和血壓就屬於這類描述性欄位。
描述性欄位如果是動詞+介詞的形式,動詞需要採用第三人稱單數的形式,比如 starts_at。然後根據欄位的內容,如果內容有多個元素或實體,我們需要使用復數,否則使用單數形式。
動作性欄位不僅能對所屬實體進行補充說明,還能對這個實體的所涉及操作有所描述。比如我們有 article 這個實體, article 的 created_by 和 created_at 就屬於動作性欄位,因為它不僅表達了 article 的創建者和創建時間這層信息,它還表達了這個 article 是指定的人被創建的,而不是憑空生成的。

B. 請高手指點,資料庫表結構設計是資料庫設計中的哪一步

這個如何說。資料庫的設計包含有資料庫表的設計,還有其主鍵、外鍵、欄位類型等的設計和定義,這個需要根據實際的需要進行。但一般都是需要做系統設計、資料庫設計,然後才是資料庫表的設計,沒有什麼一定是第幾步之類的說法。

C. 資料庫結構設計包含的數據字典 表結構有哪些

你好:
數據字典(Data dictionary)是一種用戶可以訪問的記錄資料庫和應用程序元數據的目錄。主動數據字典是指在對資料庫或應用程序結構進行修改時,其內容可以由DBMS自動更新的數據字典。被動數據字典是指修改時必須手工更新其內容的數據字典。
1數據字典是一個預留空間,一個資料庫,這是用來儲存信息資料庫本身。
1數據字典可能包含的信息,例如:
資料庫設計資料
儲存的SQL程序
用戶許可權
用戶統計
資料庫的過程中的信息
資料庫增長統計
資料庫性能統計
數據字典則是系統中各類數據描述的集合,是進行詳細的數據收集和數據分析所獲得的主要成果.
數據字典通常包括數據項\數據結構\數據流\數據存儲和處理過程五個部分.
數據字典是關於數據的信息的集合,也就是對數據流圖中包含的所有元素的定義的集合.
組成
1數據流
2數據流分量,即數據元素
3數據存儲
4處理
數據字典
資料庫的重要部分是數據字典。它存放有資料庫所用的有關信息,對用戶來說是一組只讀的表。數據字典內容包括:
資料庫中所有模式對象的信息,如表、視圖、簇、及索引等。
分配多少空間,當前使用了多少空間等。
列的預設值。
約束信息的完整性。
用戶的名字。
用戶及角色被授予的許可權。
用戶訪問或使用的審計信息。
其它產生的資料庫信息。
資料庫數據字典是一組表和視圖結構。它們存放在SYSTEM表空間中。
資料庫數據字典不僅是每個資料庫的中心。而且對每個用戶也是非常重要的信息。用戶可以用SQL語句訪問資料庫數據字典。
關於數據的信息集合,是一種用戶可以訪問的記錄資料庫和應用程序元數據的目錄,是對資料庫內表信息的物理與邏輯的說明

D. 後台產品經理需要給開發設計資料庫表結構嗎

看公司安排了,有的公司需要產品經理來做,有的是其他人負責,但是產品經理的話,這些至少要知道。

E. mysql怎麼查看錶結構和注釋

MySQL是一種開放源代碼的關系型資料庫管理系統(RDBMS),使用最常用的資料庫管理語言--結構化查詢語言(SQL)進行資料庫管理。
MySQL是開放源代碼的,因此任何人都可以在General Public License的許可下下載並根據個性化的需要對其進行修改。
MySQL因為其速度、可靠性和適應性而備受關注。大多數人都認為在不需要事務化處理的情況下,MySQL是管理內容最好的選擇。
中文名
MySQL資料庫
類型
開放源代碼的關系型
說明
資料庫管理系統
標志
sakila
相關課程

MySQL資料庫性能優化項目實戰
去學習
快速
導航
歷史常用命令資料庫導入備份與恢復資料庫優化
資料庫簡介
[1]
MySQL這個名字,起源不是很明確。一個比較有影響的說法是,基本指南和大量的庫和工具帶有前綴「my」已經有10年以上,而且不管怎樣,MySQL AB創始人之一的Monty Widenius的女兒也叫My。這兩個到底是哪一個給出了MySQL這個名字至今依然是個迷,包括開發者在內也不知道。
MySQL的海豚標志的名字叫「sakila」,它是由MySQL AB的創始人從用戶在「海豚命名」的競賽中建議的大量的名字表中選出的。獲勝的名字是由來自非洲史瓦濟蘭的開源軟體開發者Ambrose Twebaze提供。根據Ambrose所說,Sakila來自一種叫SiSwati的史瓦濟蘭方言,也是在Ambrose的家鄉烏干達附近的坦尚尼亞的Arusha的一個小鎮的名字。
MySQL,雖然功能未必很強大,但因為它的開源、廣泛傳播,導致很多人都了解到這個資料庫。它的歷史也富有傳奇性。

F. 1,資料庫表結構如何設計,有哪些表,分別有什麼作用

一般可將資料庫結構設計分為四個階段,即需求分析、概念結構設計、邏輯結構設計和物理設計。
數據字典(Data Dictionary DD)用於記載系統定義的或中間生成的各種數據、數據元素,以及常量、變數、數組及其他數據單位,說明它們的名字、性質、意義及各類約束條件,是系統開發與維護中不可缺少的重要文件。數據與數據元素分別用數據表、數據元素表記載。其中,數據號是設計人員給定的順序編號,用於分類清查與整理,並且與數據元素代碼相關聯。數據名是原有表格或憑證的名稱。

G. Access建立表結構的方法有( )A使用「數據表」視圖 B使用「設計」視圖 C使用「表向導」 D)選項A)、B)和C)

選B設計視圖。

表結構的建立都是使用設計視圖。可自行運行操作ACCESS程序試試。

H. 怎麼設計資料庫表結構的網站是先做網頁設計,還是先做資料庫表設計的前後台哪個先做

一般項目開發是這樣的,有需求之後 分兩步走。
1,美工設計頁面布局,
2程序員(回組長了,項答目經理了,)設計資料庫(看項目大小了。如果小項目程序員直接開發直接設計了)。如果是大項目可能資料庫設計就比較重要了,從e-r圖了什麼的開始設計到最後的資料庫表的生成。
3. 項目架構搭建,一般的公司都有自己搭建好的礦建了。
這是時候就正式的開始程序員的開發了。

-------
-基本上就是這個過程,希望幫到你了

I. 資料庫表結構設計,這樣設計合理嗎

一般可將資料庫結構設計分為四個階段,即需求分析、概念結構設計、邏輯結構設計和物理設計。
數據字典(Data Dictionary DD)用於記載系統定義的或中間生成的各種數據、數據元素,以及常量、變數、數組及其他數據單位,說明它們的名字、性質、意義及各類約束條件,是系統開發與維護中不可缺少的重要文件。數據與數據元素分別用數據表、數據元素表記載。其中,數據號是設計人員給定的順序編號,用於分類清查與整理,並且與數據元素代碼相關聯。數據名是原有表格或憑證的名稱。

熱點內容
塗鴉論文 發布:2021-03-31 13:04:48 瀏覽:698
手機資料庫應用 發布:2021-03-31 13:04:28 瀏覽:353
版面217 發布:2021-03-31 13:04:18 瀏覽:587
知網不查的資源 發布:2021-03-31 13:03:43 瀏覽:713
基金贖回參考 發布:2021-03-31 13:02:08 瀏覽:489
懸疑故事範文 發布:2021-03-31 13:02:07 瀏覽:87
做簡單的自我介紹範文 發布:2021-03-31 13:01:48 瀏覽:537
戰略地圖參考 發布:2021-03-31 13:01:09 瀏覽:463
收支模板 發布:2021-03-31 13:00:43 瀏覽:17
電氣學術會議 發布:2021-03-31 13:00:32 瀏覽:731