I новый в базе данных дизайн.Какие таблицы должны быть созданы для хранения всех видов файлов для онлайн-приложений?
У меня вопрос с моим собственным решением, как вы думаете?
Какие таблицы должны быть созданы для всех типов файлов, хранящихся в моем интернет-магазине (изображения, прикрепленные файлы электронной почты, текстовые файлы для тела электронной почты магазина и т. Д.)?
вариант 1: использовать отдельную таблицу для типов файлов
files{
id
files_types_id FK
file_path
file_extension
}
files_types
id
type_name (unique)
}
вариант 2: использование поля BOOL для каждого типа файла
files{
id
file_path
file_extension
is_image_main
is_image_icon
is_image_logo
is_pdf_file
is_text_file
}
вариант 3: использовать одно поле ENUM ' file_type 'для каждого типа файлов
files{
id
file_path
file_extension
file_type (image_main,image_icon,image_logo,image_main,pdf,text) **enum**
}
Благодарим вас, Yosef
Я не очень хорошо знаю mySql, поэтому я не могу говорить с функцией enum, но могу сказать, что вариант 2 - худший вариант. Каждый раз, когда вы решите добавить другой тип файла, вы будете изменять свою схему базы данных ... – Kendrick
почему ее проблема в изменении схемы базы данных? Ее дополнительное значение, а не изменение шаблона таблицы. Пожалуйста, можете привести пример для вашего мнения (I только спросите знать beacause i new в дизайне базы данных) – Yosef
Это проблема, потому что если вы начнете хранить видео, это новый столбец, если вы начнете хранить аудио, это новый столбец и т. д. – APC