Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Вставка картинок по сгенерированному пути  [new]
nFalcon
Member

Откуда: Донецк
Сообщений: 23
Хочу вставить несколько картинок из одной папки в одну таблицу.
Путь к картинкам подчиняется определенному правилу - легко сгенерировать.

если делаю вставку явным образом:
insert into Photos(id, Photo, Path)
SELECT 
    1, *, @lpath
FROM 
    OpenRowSet(BULK N'd:\Photo\5604.jpg', Single_blob) AS i


то все работает.

Хочу сделать что-то типа такого (приведенный ниже код не работает, переменную не принимает):

DECLARE @lpath varchar(100)
SET @lpath = 'd:\Photo\5604.jpg'

--insert into Photos(id, Photo, Path)
SELECT 
    4144, *, @lpath
FROM 
    OpenRowSet(BULK @lpath, Single_blob) AS i


Как сделать что-то подобное?
(проблему решил генерированием множества скриптов на вставку, но мне этот вариант не нравится)
31 июл 17, 09:45    [20686916]     Ответить | Цитировать Сообщить модератору
 Re: Вставка картинок по сгенерированному пути  [new]
env
Member

Откуда: Россия, Москва
Сообщений: 5964
nFalcon,

OPENROWSET requires string literals, not expressions

Поэтому либо ваш путь - генерить скрипты, либо обходные манёвры с хранимками под конкретные типы MIME.
31 июл 17, 10:24    [20687005]     Ответить | Цитировать Сообщить модератору
 Re: Вставка картинок по сгенерированному пути  [new]
nFalcon
Member

Откуда: Донецк
Сообщений: 23
env,

Спасибо за ответ.
Жаль, думал может можно как-то обойти это ограничение без костылей :)
31 июл 17, 10:26    [20687014]     Ответить | Цитировать Сообщить модератору
 Re: Вставка картинок по сгенерированному пути  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7399
nFalcon,

filetable?
31 июл 17, 10:38    [20687051]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить