Какой тип данных лучше всего подходит для сохранения изображений в базе данных?
Мы разрабатываем веб-сайт электронной коммерции с использованием Asp.net и Sql-сервера. Клиент может просматривать и заказывать широкий ассортимент выключателей и светильников.
Поскольку нам нужно отображать изображения этих продуктов для каждой категории, количество отображаемых изображений может увеличиться до 500. Мы немного смущены тем, следует ли сохранять эти изображения в виде типа изображения в SQL или лучше для сохранения пути изображения. В последнем случае лучше сохранить все изображения под одной папкой?
Просьба сообщить о лучшем действии.
Ответы
Ответ 1
Тип данных image
не имеет ничего общего с изображениями. Я не знаю, почему он существует. Это наследие.
Сохраните изображения, как если бы вы сохранили любой другой блок: varbinary(max)
.
Вопрос о том, следует ли хранить капли в базе данных вообще, обсуждался ранее. Обратите внимание, что ответы там очень упрямы и субъективны. Очевидно, неправильно сказать, что всегда нужно хранить капли внутри вне базы данных.
Ответ 2
Вы можете использовать следующие типы данных для BLOB на сервере sql:
Binary
: фиксированный размер до 8 000 байт.
VarBinary(n)
: размер переменной до 8000 байт (n указывает максимальный размер).
VarBinary(max)
: переменный размер, предел в 2 ГБ.
Что такое BLOB?
Ответ 3
Я бы предложил вам сохранить URL-адреса изображений в базе данных, против вашего идентификатора продукта. Но если вы запрашиваете до 500 URL-адресов за раз, я бы предположил, возможно, представить CDN в середине для кэширования URL-адресов изображений. Будет иметь большое влияние на производительность
Ответ 4
Сохранение изображения в папку и путь к этому файлу на сервер sql - хорошая идея. Но это может вызвать одно и то же имя файла и заменить его. поэтому сохраняется с отметкой времени. Я думаю, что это поможет вам в противном случае сделать еще один способ сохранения в Image Datatype сервера sql.
Сохранить данные на sql-сервере. Тип данных изображения. Следуйте за Guildline по ссылке ниже.
Перейти к ссылке
Ответ 5
Подумайте об этом. Если вы сохраняете в поле blob, убедитесь, что вы создаете отдельную группу файлов для этих данных. Если вы решили сохранить путь. Используйте фильтр. База данных будет управлять этим путем. Он будет обрабатываться в транзакциях. Он будет скопирован с базой данных.