Как перечислить имена и размеры всех папок и файлов на свежем воздухе? (База данных Oracle 11g)
Мне нужно получить информацию из базы данных Alfresco:
- все имя папки
- все имя файла
- размер
Может кто-нибудь дать мне запрос SQL для этого?(Если возможно, чтобы получить их в иерархическом порядке)
Я использую оракул 11г
Спасибо
2 ответа
CMIS запрос был предложен здесь.
Но если вам нужно использовать SQL, попробуйте это ( подробнее):
SELECT
n.id as node_id,
aq.local_name as node_type,
npn.string_value as node_name,
ca.parent_node_id,
cu.content_size,
cu.content_url,
n.uuid,
n.audit_created
FROM alf_node as n
left outer join alf_node_properties npn on
(npn.node_id=n.id and npn.actual_type_n=6 and npn.qname_id in
(select id from alf_qname where local_name='name'))
left outer join alf_node_properties npc on
(npc.node_id=n.id and npc.actual_type_n=21 and npc.qname_id in
(select id from alf_qname where local_name='content'))
left outer join alf_content_data cd on (cd.id = npc.long_value)
left outer join alf_content_url cu on (cd.content_url_id = cu.id)
left outer join alf_child_assoc ca on (ca.child_node_id=n.id)
left outer join alf_qname aq on (n.type_qname_id=aq.id)
where
aq.local_name in ('folder','content')
"Схема базы данных должна быть внутренней - вы не должны использовать ее напрямую" - Джефф Поттс
Прежде всего, не рекомендуется напрямую иметь дело с базой данных на свежем воздухе, в том числе и тогда, когда вам нужна некоторая базовая информация об узле на свежем воздухе.
На открытом воздухе доступен Java API, который вы можете использовать. Все API доступны по ссылке ниже.
http://docs.alfresco.com/5.1/concepts/dev-services.html?m=2
По вашему требованию вы можете использовать nodeService of alfresco.