På grunn av noen skrivefeil eller for å gi noe mer meningsfylt navn i henhold til standardene, kan du ikke endre disse feltene senere. Også du kan ikke slette dem også. Oracle anbefaler å deaktivere dem ved å gi en sluttdato. Men mange utviklere liker ikke å forlate feil ting i systemet. De liker bedre å slette dem og gjenskape dem på nytt.
Hvorfor Oracle har begrenset Til Å Oppdatere eller Slette?
årsaken er at samtidig program med XML-utdata samsvarer Med kortnavnet med malkoden for å finne ut hvilken XML Publisher-mal som skal brukes til etterbehandling. Hvis du sletter denne malen, Kan Ikke Postprosessoren finne malen, og deretter gi feil. Så det er alltid bedre å ikke gi mulighet til å oppdatere eller slette.
men vi har denne løsningen for å oppdatere eller slette malen eller datadefinisjonene ved hjelp av skript. Det anbefales å kjøre først i utviklingsinstanser.
Før løsningen, la oss se på hovedtabellene som lagrer informasjonen Til Datadefinisjonene og Malene.
1. Xdo_ds_definitions_b: tabell for lagring av datakildedefinisjon representert VED XML Schema Definition (XSD). Hver datakilde har ett eller flere elementer, og denne informasjonen lagres I XDO_DS_ELEMENTS_B.
2. XDO_DS_DEFINITIONS_TL: oversettelsestabell FOR XDO_DS_DEFINITIONS_B.
XDO_LOBS: denne tabellen brukes til lagring av nasjonale (språk og territorium) sensitive binære filer og tekstfiler. Den brukes hovedsakelig til lagring av språkoppsettmaler.
3. Xdo_config_values: lagrer verdiene FOR XML Publisher konfigurasjonsegenskaper angitt fra Oracle Applications interface.
4. Xdo_templates_b: tabell for malinformasjon. Hver mal har en tilsvarende datakildedefinisjon lagret I XDO_DS_DEFINITIONS_B. Hver oversettelse av en bestemt mal, ikke hver mal, har en tilsvarende fysisk malfil. Den fysiske malfilinformasjonen lagres I XDO_LOBS.
5. XDO_TEMPLATES_TL: oversettelse tabell FOR XDO_TEMPLATES_B.
SETT SERVEROUTPUT PÅ;
DECLARE var_templateCode VARCHAR2 (100): = ‘ORACLEERPAPPSGUIDE’; — Malkode
boo_deleteDataDef BOOLEAN: = TRUE; — slett tilknyttede Data Def.
BEGYNN
FOR RS
INN (VELG T1.APPLICATION_SHORT_NAME TEMPLATE_APP_NAME,
T1.DATA_SOURCE_CODE,
T2.APPLICATION_SHORT_NAME DEF_APP_NAME
FRA XDO_TEMPLATES_B T1, XDO_DS_DEFINITIONS_B T2
HVOR T1.TEMPLATE_CODE = VAR_TEMPLATECODE
OG T1.DATA_SOURCE_CODE = T2.DATA_SOURCE_CODE)
SLØYFE
XDO_TEMPLATES_PKG.DELETE_ROW (RS.TEMPLATE_APP_NAME, VAR_TEMPLATECODE);
SLETT FRA XDO_LOBS
DER LOB_CODE = VAR_TEMPLATECODE
OG APPLICATION_SHORT_NAME = RS.TEMPLATE_APP_NAME
OG LOB_TYPE I (‘TEMPLATE_SOURCE’,’MAL’);
SLETT FRA XDO_CONFIG_VALUES
DER APPLICATION_SHORT_NAME = RS.TEMPLATE_APP_NAME
OG TEMPLATE_CODE = var_templateCode
OG DATA_SOURCE_CODE = RS.DATA_SOURCE_CODE
OG CONFIG_LEVEL = 50;
DBMS_OUTPUT.PUT_LINE (‘Valgt mal har blitt’ | | var_templateCode | | ‘ slettet.’);
hvis boo_deleteDataDef
DERETTER
XDO_DS_DEFINITIONS_PKG.DELETE_ROW (RS.DEF_APP_NAVN,
RS.DATA_SOURCE_CODE);
SLETT FRA XDO_LOBS
HVOR LOB_CODE = RS.DATA_SOURCE_CODE
OG APPLICATION_SHORT_NAME = RS.DEF_APP_NAME
OG LOB_TYPE I
(‘XML_SCHEMA’,
‘DATA_TEMPLE’,
‘XML_SAMPLE’,
‘BURSTING_FILE’);
SLETT FRA XDO_CONFIG_VALUES
DER APPLICATION_SHORT_NAME = RS.DEF_APP_NAME
OG DATA_SOURCE_CODE = RS.DATA_SOURCE_CODE
OG CONFIG_LEVEL = 30;