SQL 2000 и Image поле

Dimsonnn
Дата: 04.02.2009 13:06:39
Приветствую.
Есть такая проблема. Процедурно (N-SQL) затягиваю файл в Image поле таблицы.
Данные в таблицу попадают, все замечательно, кроме одного. По каким то причинам, клиентское приложение (Access 2007) выдает ошибку OLE при доступе к этой записи. Более того, если я средствами Acceess вношу в таблицу объект, то его обработка проходит замечтаельно.
Текст процедуры
declare @filename varchar(1024)
set @filename = 'c:\test.doc'
declare @ptr varbinary(64)
declare @binaryout varbinary (8000)
declare @ADODBStream int
DECLARE @hr2 int
EXEC @hr2 = sp_OACreate 'ADODB.stream', @ADODBStream OUT
EXEC @hr2 = sp_OASetProperty  @ADODBStream ,'type',1
EXEC @hr2 = sp_OAMethod  @ADODBStream , 'open', null
EXEC @hr2 = sp_OAMethod  @ADODBStream , 'LoadFromFile', null, @filename
EXEC @hr2 = sp_OAMethod  @ADODBStream , 'Read', @binaryout out, '8000'
create table  #tmptable  (fileimg image)
insert #tmptable values (@binaryout)
while @binaryout  is not null
begin
 EXEC @hr2 = sp_OAMethod  @ADODBStream , 'Read', @binaryout out, '8000'
 select @ptr=textptr(fileimg) from #tmptable 
 updatetext #tmptable.fileimg @ptr NULL 0 @binaryout
end
--Loop
set nocount off
update  MyTable set AttFile = fileimg, AttNAme = 'Test.Doc'
from
#tmptable
drop table #tmptable
EXEC @hr = sp_OADestroy @ADODBStream
Где накосячил?В клиенте все давно и замечательно работает.
Версия сервера
Microsoft SQL Server  2000 - 8.00.760 (Intel X86) 
	Dec 17 2002 14:22:05 
	Copyright (c) 1988-2003 Microsoft Corporation
	Desktop Engine on Windows NT 5.0 (Build 2195: Service Pack 4)
Glory
Дата: 04.02.2009 13:09:38
Dimsonnn

Где накосячил?В клиенте все давно и замечательно работает.
Версия сервера
Microsoft SQL Server  2000 - 8.00.760 (Intel X86) 
	Dec 17 2002 14:22:05 
	Copyright (c) 1988-2003 Microsoft Corporation
	Desktop Engine on Windows NT 5.0 (Build 2195: Service Pack 4)

А вы сравнивали свою процедуру с действиями Access 2007 при заполнении этого поля ?
Dimsonnn
Дата: 04.02.2009 13:25:13
Сравнивал. Но видимо разницу не уловил(((
Glory
Дата: 04.02.2009 13:26:58
Dimsonnn
Сравнивал. Но видимо разницу не уловил(((

Хороший ответ. Ну а содержимое столбца при занесении одного и того же файла разными способами тоже не сравнивали ?
Dimsonnn
Дата: 04.02.2009 14:10:19
Сравнивал. Разное оно.
Glory
Дата: 04.02.2009 14:15:36
Dimsonnn
Сравнивал. Разное оно.

Ну если разное, то чего вы хотите то ?
Dimsonnn
Дата: 04.02.2009 15:00:57
Хочу чтобы объект попадал в поле в корректном состоянии. а не в измененном кривой процедурой, о чем был вопрос-корректна ли процедура.
Glory
Дата: 04.02.2009 15:03:42
Dimsonnn
Хочу чтобы объект попадал в поле в корректном состоянии. а не в измененном кривой процедурой, о чем был вопрос-корректна ли процедура.

Тогда заносите в поле тоже самое, что заносит туда Access. Потому что не MSSQL нет типа данных "объект".
Dimsonnn
Дата: 04.02.2009 15:10:51
объект- это файл(jpg,doc,xls).
Glory
Дата: 04.02.2009 15:12:32
Dimsonnn
объект- это файл(jpg,doc,xls).

А вот вы как считаете, на основании чего Access знает, какой именно это OLE объект он записал в бинарное поле ?