⊗ppPmDOLT 381 of 447 menu

Врзување на табели во бази на податоци

Нека имаме табела со имиња на корисници и градови во кои тие живеат:

users
id name city
1 user1 city1
2 user2 city1
3 user3 city2
4 user4 city1
5 user5 city3
6 user6 city2

Недостаток на оваа табела е тоа што истиот град се повторува неколку пати за различни корисници. Ова води до одредени проблеми.

Прво, постојаното повторување води до тоа што базата на податоци почнува да зазема многу повеќе простор.

Второ, прилично е незгодно да се извршуваат операции со градови. На пример, сакаме да прикажеме на екран листа на сите градови. Така едноставно ова не може да се направи. Ќе мораме да ги добиеме сите корисници заедно со нивните градови, потоа да ги избришеме дупликатите од добиените градови и само тогаш ќе ја добиеме оваа листа.

А сега замислете дека во базата има 10000 корисници од 10 градови - за овие 10 градови ќе мораме да ја земеме целата табела од огромен број редови - ќе испадне многу бавна операција со бесмислена трошење на ресурси.

Решавање на проблемот

Треба да ја поделиме нашата табела на две: во едната ќе се чуваат градови, а во втората - корисници. Притоа во табелата со корисници ќе има колона city_id, која ќе се повикува на градот на корисникот.

Значи, ајде да направиме две табели. Табела со градови:

cities
id name
1 city1
2 city2
3 city3

Табела со корисници:

users
id name city_id
1 user1 1
2 user2 1
3 user3 2
4 user4 1
5 user5 3
6 user6 2

Нека треба да чувате производи (име, цена, количина) и категории на овие производи. Опишете ја структурата на складирање.

Нека треба да чувате реки и мориња во кои се влеваат овие реки. Опишете ја структурата на складирање.

Нека треба да чувате градови и земји, во кои се наоѓаат. Опишете ја структурата на складирање.

Македонски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние користиме колачиња за работата на веб-страната, анализа и персонализација. Обработката на податоци се врши во согласност со Политиката за приватност.
прифати ги сите прилагоди одбиј