Сохранение изображения в SQL Server 2008? - PullRequest
1 голос
/ 28 августа 2009

У меня есть это:

Create Proc CrearNuevoImagen
    @imagen image       
AS

INSERT INTO 
    Imagenes(imagen)

VALUES(
    @imagen
    )

Я вижу, что @imagen имеет тип 'image'.

У меня вопрос, кроме того, что у меня есть изображение .jpg на моем внешнем интерфейсе (код моего сайта asp.net), как я могу преобразовать изображение .jpg, чтобы оно поместилось в столбце типа «изображение»? Или SQL Server автоматически делает это для меня?

Ответы [ 3 ]

4 голосов
/ 28 августа 2009

Сохраните ваш объект изображения в MemoryStream. Затем вы можете извлечь байтовый массив из потока памяти и передать его на SQL Server, чтобы сохранить его в столбце «image» или «varbinary».

2 голосов
/ 28 августа 2009

Тип столбца изображения - это просто двоичный контейнер; SQL Server вообще не интерпретирует и не изменяет данные, которые вы там храните.

См. http://www.informit.com/articles/article.aspx?p=377078

1 голос
/ 29 декабря 2010

Тип IMAGE - это просто имя для типа, который может хранить байтовый массив. Теперь он устарел, и вместо него следует использовать тип VARBINARY (MAX). Сохранение файлов JPG в серверной базе данных на самом деле немного сложнее, если вы заботитесь о производительности, поскольку необходимо избегать копирования этих относительно больших файлов в память. Взгляните на Загрузка и выгрузка изображений с SQL Server через ASP.Net MVC для примера эффективной потоковой передачи файлов изображений, хранящихся в BLOB-полях SQL Server.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...