Я использую sQLLDER (11g) для загрузки данных в таблицу. Один из столбцов - это большой двоичный объект, который необходимо загрузить из другого файла. Имя файла зависит от поля таблицы, и мне нужно объединить полный путь, чтобы иметь возможность загрузить файл. Таким образом, чтобы получить полный путь к файлу, мне нужно объединить путь к папке «/ oradata / val /» с полем ID_RECOMMENDATION плюс расширение «.dat»; например, если поле ID_RECOMMENDATION имеет значение «1», имя файла должно быть «/oradata/val/1.dat». Я не могу изменить исходный файл, поэтому я хочу использовать выражение, чтобы получить полный путь к файлу, используя что-то вроде этого:
LOAD DATA
INFILE *
INTO TABLE t_val_recommendation append
fields terminated by ';'
(
ID_RECOMMENDATION,
ID_PROFILE ,
START_DATE date 'yyyymmdd',
LOBF_00001 BOUNDFILLER"trim('/oradata/val/'||:ID_RECOMMENDATION||'.dat')",
PARAGRAPHS LOBFILE (LOBF_00001) TERMINATED BY EOF,
ASSET_ALLOCATION
)
Но, похоже, он не понимает объединение пути и имени файла. Как я могу это сделать?
спасибо
(отредактировано для уточнения значения)
Это схема таблицы:
ID_RECOMMENDATION NUMBER(10) NOT NULL,
ID_PROFILE VARCHAR2(10 BYTE) NOT NULL,
START_DATE DATE NOT NULL,
PARAGRAPHS SYS.XMLTYPE,
ASSET_ALLOCATION SYS.XMLTYPE
И это будет строка для загрузки:
1;CONSERVATIVE;20120301;<aa>This is my asset allocation</aa>