I use last version of the EndityDAC and UniDAC in Delphi 10.4.1. I noticed that there is a different management on the generation of parameter names between a select and an update / insert.
In the gerenerated select statment the name of the parameters are :p0 - :p1 - :pn
while in the insert/update the name of the parameters are :paramNAME_OF_THE_ATTRIBUTE. This is a very big problem because the Oracle (11.0.2) raise an exception ORA-00972 identifier is too long because the name of the parameter exceeds 30 characters
This is a sample for the select statment:
Code: Select all
SELECT
t1.PERSONALE_FK PersonaleFk,
t1.REPARTI_FK RepartiFk,
t1.REPARTO_DEFAULT RepartoDefault,
t1.NOME_REPARTO NomeReparto,
t1.CODICE_OSPEDALE CodiceOspedale,
t1.NOME_OSPEDALE NomeOspedale,
t1.TIPO_REPARTO TipoReparto,
t1.PK_TIPO_WORKFLOW PkTipoWorkflow
FROM
RISDBA.V_SWF_USER_WARDS t1
WHERE
(t1.TIPO_REPARTO = :p0) AND
(t1.PERSONALE_FK = :p1)
Code: Select all
update
RISENDO.CONFIGURAZIONE_REPARTO
set
DICOM_MODE = :paramDicomMode,
LARGHEZZA_IMMAGINE = :paramLarghezzaImmagine,
INTGR_TRACCIAMENTO_ENDOSCOPI = :paramIntgrTracciamentoEndoscopi,
TIPOLOGIA_NOME_FOLDER_ESAME = :paramTipologiaNomeFolderEsame,
EXEC_ACQUISIZIONE_INFERMIERE = :paramExecAcquisizioneInfermiere
where
PK_REPARTI_FK = :keyPkRepartiFk
I am stuck on development and either find a solution very quickly otherwise I have to replace EntityDAC
I need urgent help!
Best Regards