Обратите внимание на два пути
PATH LINK --------------------------------------------- --------------------- /public/myfolder myfolder
/public/myfolderfile1.txt file1.txt /public/myfolder/file1.txt file1.txt /public/myfolder/file2.xml file2.xml
Обратите внимание на два пути доступа в репозитарии к одному и тому же файлу (ресурсу).
Удаление:
CALL DBMS_XDB.
DELETERESOURCE ( '/public/myfolderfile1.txt' ); CALL DBMS_XDB.DELETERESOURCE ( '/public/myfolder/file1.txt' ); CALL DBMS_XDB.DELETERESOURCE ( '/public/myfolder/file2.xml' ); CALL DBMS_XDB.DELETERESOURCE ( '/public/myfolder' );
Упражнение. Проверьте реакцию XML DB на попытку удалить несуществующий файл или непустую папку.
В отличие от производных таблиц (view) словаря-стправочника в Oracle, производные таблицы RESOURCE_VIEW и PATH_VIEW обновляемы (на деле это "объектно-реляционные" таблицы). Это позвляет, например, удалить связь также и командой DELETE, или переместить существующий ресурс в другую папку обычной операцией UPDATE:
UPDATE path_view SET путь = новый_путь WHERE equals_path ( res, путь ) = 1 ;
Пример помещения в репозитарий файла ОС:
CONNECT / AS SYSDBA
CREATE
DIRECTORY courses AS 'c:\crs';
GRANT READ ON DIRECTORY courses TO scott;
CONNECT scott/tiger
DECLARE retb BOOLEAN; BEGIN retb := DBMS_XDB.CREATERESOURCE ( '/public/OracleXML.doc'
, BFILENAME ( 'COURSES', 'OracleXML.doc' ) ); END; /
Проверка:
SQL> SELECT res AS resource_description 2 FROM resource_view 3 WHERE EQUALS_PATH ( res, '
/public/OracleXML.doc' ) = 1 4 ;
RESOURCE_DESCRIPTION ----------------------------------------------------------------- <Resource xmlns="http://xmlns.oracle.com/xdb/XDBResource.xsd"> <CreationDate>2006-09-05T12:47:57.547000</CreationDate> <ModificationDate>2006-09-05T12:47:57.547000</ModificationDate> <DisplayName>
OracleXML.doc</DisplayName> <Language>en-US</Language> <CharacterSet>
WINDOWS-1251</CharacterSet> <ContentType>
application/msword</ContentType> <RefCount>1</RefCount> </Resource>
Технически файлы репозитария размещаются служебных таблицах БД (документы XML) или в объектах LOB (файлы всех остальных типов). Использование формата MIME для хранения двоичных файлов не является самым экономным, что относится к издержкам метода.
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий