Descripción de la base de datos
Tipos de nodo
Sección titulada «Tipos de nodo»Estas tablas almacenan la información de un nodo en OpenKM.

La tabla llamada OKM_NODE_BASE almacena los campos comunes (nombre, autor, fecha de creación, entre otros) de todos los tipos de nodo (Document, Folder, Mail o Record).
El campo llamado NBS_UUID es el identificador único del nodo. El campo NBS_UUID es la clave foránea entre la tabla padre (OKM_NODE_BASE) y las hijas (OKM_NODE_DOCUMENT, OKM_NODE_FOLDER, OKM_NODE_MAIL, OKM_NODE_RECORD).
Hay otras tablas útiles:
- OKM_NODE_DOCUMENT: almacena información sobre documentos.
- OKM_NODE_FOLDER: almacena información sobre carpetas.
- OKM_NODE_MAIL: almacena información sobre correos.
- OKM_NODE_RECORD: almacena información sobre registros.
Consultas SQL de ejemplo
Sección titulada «Consultas SQL de ejemplo»Consulta utilizada para obtener la información de todos los documentos:
select * from okm_node_base nb inner join okm_node_document nd on nd.nbs_uuid = nb.nbs_uuidConsulta para obtener los registros cuyo nombre empieza por ‘test’:
select * from okm_node_base nb inner join okm_node_record nr on nr.nbs_uuid = nb.nbs_uuid where nb.nbs_name like 'test%'Para encontrar un documento por uuid puede utilizar esta consulta:
select * from okm_node_base nb inner join okm_node_document nd on nd.nbs_uuid = nb.nbs_uuid where nb.nbs_uuid = 'fc35ce80-57f2-4026-ae77-7a11bca042ed'Marcar documentos para que se indexen de nuevo
Sección titulada «Marcar documentos para que se indexen de nuevo»La columna llamada NDC_TEXT_EXTRACTED de la tabla OKM_NODE_DOCUMENT controla qué documentos se han procesado en la cola de extracción de texto y cuáles están aún pendientes de procesar (el valor ‘T’ significa procesado y ‘F’ pendiente). Si desea reindexar de nuevo todo el repositorio o algunos archivos, puede ejecutar una consulta como esta:
update OKM_NODE_DOCUMENT set NDC_TEXT_EXTRACTED='F'Versión del nodo
Sección titulada «Versión del nodo»La tabla llamada OKM_NODE_DOCUMENT_VERSION almacena la información de todas las versiones de un documento.

El campo llamado NDV_UUID es el identificador único de la versión del documento.
El valor del campo llamado NDV_PARENT es el identificador único del documento (el mismo valor que NBS_UUID).
SQL example queries
Sección titulada «SQL example queries»Consulta para obtener todas las versiones de un documento llamado ‘test.pdf’:
select * from okm_node_document nd inner join okm_node_document_version nv on nv.ndv_parent = nd.nbs_uuid inner join okm_node_base nb on nd.nbs_uuid = nb.nbs_uuid where nb.nbs_name = 'test.pdf'Esta consulta es útil para saber dónde se almacenan en el datastore todas las versiones de un archivo llamado ‘test.pdf’:
select ndv_uuid from okm_node_document nd inner join okm_node_document_version nv on nv.ndv_parent = nd.nbs_uuid inner join okm_node_base nb on nd.nbs_uuid = nb.nbs_uuid where nb.nbs_name = 'test.pdf'Categorías y palabras clave del nodo
Sección titulada «Categorías y palabras clave del nodo»
El valor del campo llamado NCT_NODE es el identificador único del documento (el mismo valor que NBS_UUID).
El valor del campo llamado NKW_NODE es el identificador único del documento (el mismo valor que NBS_UUID).
SQL example queries
Sección titulada «SQL example queries»Consulta para extraer todas las palabras clave asociadas a un nodo llamado ‘test.pdf’:
select * from okm_node_base nb inner join okm_node_keyword nk on nk.nkw_node = nb.nbs_uuid where nb.nbs_name = 'test.pdf'Consulta para obtener todas las categorías de un nodo llamado ‘test.pdf’:
select * from okm_node_base nb inner join okm_node_category nc on nc.nct_node = nb.nbs_uuid where nb.nbs_name = 'test'Propiedades del nodo
Sección titulada «Propiedades del nodo»En la tabla llamada OKM_NODE_PROPERTY se almacenan los metadatos de un nodo (Document, Folder, Mail, Record).

El valor del campo llamado NPG_NODE es el identificador único del documento (el mismo valor que NBS_UUID).
El campo llamado NPG_GROUP es el nombre del grupo de metadatos (por ejemplo okg:consulting)
El campo llamado NPG_NAME es el nombre del campo de metadatos (por ejemplo okp:consulting.comment)
SQL example queries
Sección titulada «SQL example queries»Consulta para obtener todos los metadatos asociados a un documento llamado ‘test.pdf’:
select nd.nbs_uuid, nbs_name, npg_group, npg_name, npg_value from okm_node_document nd inner join okm_node_base nb on nd.nbs_uuid = nb.nbs_uuid inner join okm_node_property np on np.npg_node = nd.nbs_uuid where nb.nbs_name = 'test.pdf'