Mysql
 sql >> база данни >  >> RDS >> Mysql

Силни срещу слаби обекти MYSQL

Както знаете, слабият обект е таблица, която няма първичен ключ но първичният ключ на слаб набор от обекти се формира от първичния ключ на силния набор от обекти, от който слабият набор от обекти зависи от съществуването, плюс дискриминатора на слабия набор от обекти.

Връзката между слаб обект и силен набор от обекти се нарича идентифицираща връзка. В примера, споменат в изображението по-горе, заем-плащане е идентификационната връзка за платежния субект. Слаб набор от обекти е представен от двойно очертана кутия и съответната идентификационна връзка с двойно очертан диамант, както е показано на фигурата. Тук двойните линии показват общото участие на слаб субект в силен набор от субекти, което означава, че всяко плащане трябва да бъде свързано чрез плащане на заем към някаква сметка. Стрелката от плащане на заем към заем показва, че всяко плащане е за един заем. Дискриминаторът на слаб набор от обекти е подчертан с пунктирани линии, а не с плътна линия.

Нека разгледаме друг сценарий, при който искаме да съхраняваме информацията на служителите и техните зависими. Всеки служител може да има от нула до n брой зависими лица. Всеки зависим има идентификационен номер и име.

Сега нека разгледаме следната база данни:

Има трима служители с E# съответно като 1, 2 и 3.

Сега, в случай на идентификатор на зависим обект, не може да действа като първичен ключ, защото не е уникален.

По този начин Dependent е слаб набор от обекти, който има идентификатор като дискриминатор. Той има пълно участие с връзката „има“, тъй като никой зависим не може да съществува без служителите (компанията се занимава със служители).

Има две таблици, които трябва да създадете по-горе e-r диаграмата. Това са служител с E# като една колона, която действа като първичен ключ. Другата таблица ще бъде зависима с колони E#, идентификатор и име, където първичният ключ е комбинацията от (E# и id).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Spring Boot не може да се свърже с изходите на MySQLand в Docker/Docker compose

  2. Не може да се генерира диаграма на Google, използвайки данни от MySQL таблица като източник на данни

  3. свързаността с базата данни се проваля след създаване на jar файл

  4. Съкращаване на данни:Данните са твърде дълги за колона „лого“ на ред 1

  5. Множество оператори за вмъкване/актуализация в тригера?