Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Что за странный глюк? [D6, MSSQL]


VaaL ©   (2002-08-08 12:42:00) 

Приветствую. Простой пример: есть таблица Test с двумя полями -
T_ID - int (Primary key)
T_Data - image

есть SP:
CREATE PROCEDURE Temp_Ins
@PIMG IMAGE
AS
INSERT INTO Test (T_Data)
VALUES (@PIMG)
RETURN
GO

Из Делфи используя ADOStoredProc вызываю:

ADOSP.Parameters[1].LoadFromFile(FEdit.FileName, ftVarBytes);
ADOSP.Active:=true;

Делфи говорит что Project1 raised exception EDatabaseError with message "ADOSP: CommandText does not return a result set", но тем не менее запись вставляет. В Пропертях СП Execute options, ставлю eoExecuteNoRecords в true. И!!!!!!!
Делфи начинает мне втирать что
Project1 raised exception EOleException with message "Arguments are of the wrong type, are out of acceptable range or are in conflict with one another
В чем тут прикол и что я не так делаю?


still   (2002-08-08 12:59:00) [1]

Когда делаешь Active:=true (или Open, что одно и тоже), датасет ждет от сервера набора данных. Когда ExecSQL - то нет.


VaaL   (2002-08-08 12:53:00) [2]

> SaS13
Спасибо, получилось... (Не думал что тут есть какая то разница, теперь буду знать)


still   (2002-08-08 12:49:00) [3]

Попробуй так

CREATE PROCEDURE Temp_Ins
@PIMG IMAGE
AS
SET NOCOUNT ON
INSERT INTO Test (T_Data)
VALUES (@PIMG)
SET NOCOUNT OFF
Select 1


SaS13   (2002-08-08 12:48:00) [4]

процедуру ADOSP.ExecProcзапускай.


Наверх

Титульная страница Поиск, карта сайта Написать письмо