[英]Naming conventions of linking tables, and substring_index
我有一個名為my_contacts的數據庫,由f_name,l_name,位置,興趣,尋求,性別,地位等項目組成。這是一個學校項目,正在學習mysql。 我創建了表格來拆分項目,例如由m和f組成的性別表; 因為將會有多對一的關系,而我分離的其他關系是尋求,興趣,地位(已婚,離婚等),興趣和尋求(朋友,新工作等)。
我非常清楚我的pk都需要什么(我在ea表中創建了一個pk,其命名約定為id_gender,id_status,id_seeking等。
我不清楚要為鏈接表命名的方式(如果我正確理解的話,它們將從鏈接的兩個表中保存我的外鍵,是否有任何命名約定或建議?我想到了“ contacts_link_gender”,“ contacts_link_status”之類的東西等
在某處也有關於如何使用mysqls“創建新的eer模型”的好教程,我正在使用murachs最新的mysql書籍,但是盡管一本好書他們傾向於對剛學的人有所幫助,但該教學向我們展示了但他非常簡短,而且很關鍵,我不是程序員,從不希望成為該學位的最后一門課程。
哦,還有一件事,當我采用諸如興趣之類的字段或使用substring_index對其進行拆分時,我在某些字段(interest_1,interest_2)中被騙了,我不知道如何解決它,我將包含我的子字符串底部的代碼再次感謝! 任何建議都歡迎
SELECT distinct id,
first_name,
last_name,
substring_index(location, ' ', 2) as city,
substring_index(location, ' ',-1) as state,
substring_index(interests, ' ', 1) as interest_1,
substring_index(interests, ' ', -1) as interest_2,
substring_index(seeking, ' ', 3) as seeking_1,
substring_index(seeking, ' ', -3) as seeking_2
FROM my_contacts…..
為單獨的數據創建單獨的字段。 不要僅僅因為將事情堆放在一個字段中。
該示例違反了許多規則,尤其是零,一個或無限 規則 ,尤其是大多數數據庫規范化規則 ,因此,如果這是一個好的數據庫設計,那么我認為閱讀這本書對您的危害更大。
對於學術上的MySQL和一般的SQL方法,您可能需要更多地了解如何組織數據的理論,然后通過學習相關的MySQL語句來學習如何應用數據。 CREATE TABLE
, INSERT INTO
和SELECT FROM
是這里的基礎。
在這一點上, Martin Fowler可能對您來說過於緊張,但是您可以通過示例學習適當的規范化技術。 您可以嘗試找到有關該主題的一些參考資料 。
更好的方法可能是將您的架構發布到代碼審查站點上,並獲得有關您的特定設計的反饋。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.