Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.05;
Скачать: CL | DM;

Вниз

В mssql вставить в поле типа image данные из другой строки   Найти похожие ветки 

 
Димон1 ©   (2002-08-16 12:39) [0]

Есть таблица People в ней есть поле Photo типа image. Нужно взять данные из этого поля и вставить в другую строку этой же таблицы. Делаю запрос:

UPDATE People
SET Photo = (SELECT photo
FROM People
WHERE PeopleID = 34)
WHERE PeopleID = 14


он мне отвечает, что нельзя использовать поле image в подзапросе.

Что посоветуете?
Может быть что-то с курсорами?


 
Димон1 ©   (2002-08-16 14:27) [1]

Тут есть Мастера MSSQL ?


 
Fiend ©   (2002-08-16 14:33) [2]

Мастера есть!


> он мне отвечает, что нельзя использовать поле image в подзапросе.

Действительно нельзя, читайте БОЛ.

А чтоб можно было сделать то что хоцца, то запрос надо правильно написать
И испоьзовать для этого конструкцию Update FROM


 
SaS13 ©   (2002-08-16 14:45) [3]

чё нить типа:
DECLARE @cImg binary(16)
SELECT @cImg = TEXTPTR(photo) FROM people WHERE peopleid = 34
UPDATE people SET photo = @cImg WHERE peopleid = 14


 
Fiend ©   (2002-08-16 14:56) [4]

То SaS13
немного усложнили жизнь человеку.

Зачем так если можно в одну строку
UPDATE People
set Photo=P.Photo
FROM People P
WHERE P.PeopleID=34 and PeolpeID=14


 
Димон1 ©   (2002-08-16 16:47) [5]

Fiend © (16.08.02 14:56)
Я выполнил это. Он написал: query executed successfully. Раньше всегда после "апдейта" писал типа "1 Rows affected". А эффекта-то нет. Таблица осталась в прежнем состоянии.


 
Reindeer Moss Eater   (2002-08-16 16:55) [6]

>Димон1
Подставь в запрос реальные значения PeolpeID, и проверь SET NOCOUNT = OFF
:)


 
Димон1 ©   (2002-08-16 17:01) [7]

>SaS13 © (16.08.02 14:45)


в исходной ячкйке было 266 килобайт , в целевой оказалось только 16 байт :(


 
sniknik ©   (2002-08-16 17:05) [8]

а ты втупую пример скопировал? не обратил внимание на размер данных в примере?
DECLARE @cImg binary(16)


 
Димон1 ©   (2002-08-16 18:10) [9]

>sniknik © (16.08.02 17:05)
разумеется я пробовал. к сожалению более 8000 байт он мне не разрешил, а мне как видете надо 266 КИЛОбайт. и это не предел



 
sniknik ©   (2002-08-16 19:34) [10]

Binary Strings

binary
Fixed-length binary data with a maximum length of 8,000 bytes.
varbinary
Variable-length binary data with a maximum length of 8,000 bytes.
image
Variable-length binary data with a maximum length of 2^31 - 1 (2,147,483,647) bytes.

ставь тип имидж влезет.



Страницы: 1 вся ветка

Текущий архив: 2002.09.05;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.017 c
14-14251
Alexsandri
2002-08-11 12:12
2002.09.05
господа возможно ли перехватить ножатие на del


3-13872
Voland_s
2002-08-17 12:24
2002.09.05
редактирование поля calculated


3-13932
af
2002-08-14 17:46
2002.09.05
составляю небольшую прогу с базой данных c BDE


7-14286
Proton
2002-06-23 03:55
2002.09.05
клавиши управления пистанием


3-13880
Selax
2002-08-14 09:34
2002.09.05
Сохранение кэшированных изменений в подчиненных таблицах