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

Две таблици с еднакви колони или една таблица с допълнителна колона?

Зависи от ограниченията:

  • Имате ли външни ключове или ПРОВЕРКИ на apples които не съществуват в oranges (или обратно)?
  • Трябва ли да запазите ключовете уникални и в двете таблици (така че не apple може да има същия идентификатор като някои orange )?

Ако отговорите на тези два въпроса са:„да“ и "не" , дръжте таблиците отделни (за да могат ограниченията да бъдат направени специфични за таблицата).

Ако отговорите са:"не" и "да" , обединете ги заедно (за да можете да създадете ключ, който обхваща и двете).

Ако отговорите са:„да“ и "да" , помислете за емулиране на наследяване:

Потърсете данни е типичен пример за таблици, които изглеждат сходни, но трябва да се държат отделно, за да могат FK да се държат отделно.

По-конкретно, това е стратегията "всички класове в отделни таблици" за представяне на наследяване (известно още като категория, подкласове, подтипове, йерархия на обобщение и т.н.). Може да искате да разгледате тази публикация за повече информация.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Архивирайте mysql база данни и изтеглете като файл

  2. Преобразувайте двоичен в десетичен с помощта на MySQL

  3. Грешка с твърде много отворени файлове в Ubuntu 8.04

  4. Нуждаете се от помощ за оптимизиране на географско търсене по ширина/дълга за mysql

  5. Как да свържа Java към Mysql?