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

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

ODAC-TOraLoader [D5, D6]


anat ©   (2004-10-08 11:23:00) 

Как с помощью TOraLoader(если это возможно)
загрузмть BLOB


Reindeer Moss Eater   (2004-10-08 14:29:00) [1]

SQLLDR.EXE >HOWTOLOAD.TXT


anat   (2004-10-08 14:27:00) [2]

Direct=TRUE
Еще раз

Не подскажешь как загрузить содержимое файла
в BLOB поле определенной таблицы
с помощью SQLLDR

На нет и суда нет.


Reindeer Moss Eater   (2004-10-08 14:13:00) [3]

А лоадер их что, по твоему, через гиперпространство на сервер доставлять умеет?


anat   (2004-10-08 14:10:00) [4]

Файлы слишком большие(> 1G)
TOraQuery.ParamByName('такой-то').AsOraBlob.LoadFromFile()
долго грузит


Reindeer Moss Eater   (2004-10-08 14:01:00) [5]

А нахрена с помощью лоадера-то?

TOraQuery.ParamByName('такой-то').AsOraBlob.LoadFromFile()


anat   (2004-10-08 13:37:00) [6]

Не подскажешь как загрузить содержимое файла
в BLOB поле определенной таблицы
с помощью SQLLDR


Reindeer Moss Eater   (2004-10-08 12:57:00) [7]

Используй GetColumnData.

procedure TfmMain.GetColumnData(Sender: TObject;
 Column: TDPColumn; Row: Integer; var Value: Variant; var EOF: Boolean);

Со скалярными типами полей все как обычно.
Блобы должны быть указаны в конце списка как и определено в документации.
Флаг EOF выставляй когда все данные блоба будут получены после нескольких вызовов GetColumnData (если не запостишь все данные за один вызов)
Какой базовый тип использовать для параметра Variant?
Так как ничего специального не предусмотрено, думаю что в качестве буфера подойдет строка. Для clob.
А вот как это поможет для blob и raw - трудно сказать.
В общем пробовать надо.


anat   (2004-10-08 11:47:00) [8]

TOraLoded :
1.procedure PutColumnData(Col: Integer; Row: Integer; Value: Variant);
2.type
 TGetColumnDataEvent = procedure (Sender: TObject; Column:
   TDPColumn; Row: Integer; var Value: variant; var EOF: boolean) of object;

property OnGetColumnData : TGetColumnDataEvent;

? и как передать Variant-BLOB


Reindeer Moss Eater   (2004-10-08 11:43:00) [9]

type
 TDPColumnDataType = (ctString,ctDate,ctInteger,ctUInteger,ctFloat);

property DataType: TDPColumnDataType;

Description

Use DataType to specify types of values which will be loaded. Data types for columns may not matchdata types for the corresponding fields in the database table. TOraLoader will castdata values to the types of their fields.


anat   (2004-10-08 11:38:00) [10]

LOBs must be specified after all scalar columns

Где, в каком месте
Если знаешь - 2 строчки примера


Reindeer Moss Eater   (2004-10-08 11:33:00) [11]

так же как любую другую.

Limitations and Restrictions

TOraLoader has the following limitations similar to those of SQL*Loader:

· triggers are not supported
· check constraints are not supported
· referential integrity constraints are not supported
· clustered tables are not supported
· loading of remote objects is not supported
· user-defined types are not supported
· LOBs must be specified after all scalar columns· LONGs must be specified last


anat   (2004-10-08 11:32:00) [12]

И как задать колонку типа BLOB ?


Reindeer Moss Eater   (2004-10-08 11:27:00) [13]

Выдержка из справки:

See Also

Working with TOraLoader

TDPColumns

TOraSession

Loader demo project


Наверх

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