Какой тип данных лучше всего подходит для сохранения изображений в базе данных?

Мы разрабатываем веб-сайт электронной коммерции с использованием 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, убедитесь, что вы создаете отдельную группу файлов для этих данных. Если вы решили сохранить путь. Используйте фильтр. База данных будет управлять этим путем. Он будет обрабатываться в транзакциях. Он будет скопирован с базой данных.