資料的思路矛盾

2021-09-24 05:57:51 字數 1689 閱讀 4780

1.資料的思路矛盾,首先設計資料庫時,需要遵循一些規則之外,還有一對一資料,或者一對多資料,甚至是多對多的資料。

2.在關係是一對多的關係時,也包含了一對多的資料,乙個表資料鏈結多個表資料的查詢,

3.比如我有2個表作資料查詢,分別為

倉庫,原料

求:倉庫 + 原料的多表結合查詢

b_material 原料表

warehouse_b 倉庫表

4.下圖是把原料id放進倉庫表裡的查詢。

從圖中可看出我新增了3個大肉的原料名稱,同樣是北京倉庫,但是主鍵id卻是自增的

就導致了新增一條原料就要新增一條倉庫資訊,倉庫主鍵id的情況,也會導致設定下拉框時出現一大堆同樣倉庫名稱的選擇,這樣就不知道哪個倉庫對應的原料了。

5.因此就實現不了乙個倉庫有多個資訊的要求,當需要多條原料資訊時,就會出現每新增一條原料資訊就佔了乙個倉庫主鍵,也就代表,每新增一條原料就要新增一條倉庫資訊。

6.這樣又會出現一種情況,有多少原料id,就有多少倉庫id,會出現多次倉庫資訊,這樣顯得複雜又不合理。

7.解決方法:

那麼我就把倉庫id放進原料表了,和之前的反過來

8.原料表裡面有了倉庫的id,在新增原料時,id也會自增的,增加原料的id是合理的,因為原料在增加,不是倉庫在增加。

那麼我就增加屬於肉類的原料資訊,對應的放到乙個北京倉庫裡面,

9.從下面看出,我只新增了乙個北京倉庫,並沒有新增很多同樣的倉庫資訊,

10.倉庫id是原料表的外來鍵id。我從新增原料的時候,輸入倉庫外來鍵id為1,新增多條原料資訊時就會放到倉庫為1的資料裡,不會產生衝突。

11.我在原料表裡新增了,倉庫id為2

那麼倉庫表裡主鍵2是上海倉庫

12.結合查詢時,1就代表1倉庫的資料,2就代表2倉庫的資料。

13.這兩個表查詢的思路:我理解它為,一對多的資料,一對一的關係,因為從乙個倉庫裡查詢多條資料。但是卻是一對一的關係,因為倉庫與原料是一對一的。

14.新增原料而不增加倉庫,新增倉庫卻新增原料,我覺得有點繞,但是也很分明。

下面是結合查詢,每新增一條不同名稱就放進不同倉庫的查詢,可以看到id對應的資料

15.倉庫資料

16.原料資料

17.這3張全覽表就可以對比出資料之間的關係了。

矛盾的生活

酒吧也許是乙個讓人脫離現實的一種地方,離爍的燈光,雜亂的dj,和那些形形色色的陌生人,構成了乙個虛幻的世界,在這裡可以讓自己忘記一切,只能感覺到酒精帶來的興奮和菸草味帶來的刺激,跟著刺耳的dj狂亂的舞動著不屬於自己靈魂的軀體。那一刻,靈魂在那裡。我是誰,我在那裡,我不知道。如果愛注定是一種痛苦,為何...

古人的矛盾

俗話說 1 兔子不吃窩邊草 可俗話又說 近水樓台先得月 2 俗話說 宰相肚裡能撐船 可俗話又說 有仇不報非君子 3 俗話說 人不犯我,我不犯人 可俗話又說 先下手為強,後下手遭殃 4 俗話說 男子漢大丈夫,寧死不屈 可俗話又說 男子漢大丈夫,能屈能伸 5 俗話說 打狗還得看主人 可俗話又說 殺雞給猴...

優化演算法中的矛盾

優化演算法中的矛盾 或許你認為收斂速度快的演算法是好演算法,或許你認為適用外圍廣的演算法是好演算法,或許你認為穩定的演算法是好演算法 但是符合上述所有要求的演算法存在嗎,我不知道,但我沒有見過.昨天與人談到演算法的收斂速度的問題,我就想到了rosenbroke函式,畫過或看到過 它的函式影象的人都回...