Bug #3057
ferméErreur sur les fichiers joints suite au scripts Oracle de la 5.8.1
Description
Sous Oracle, il n'est pas possible de renommer ou modifier une colonne aussi facilement que sous Postgres ou mssql, c'est pourquoi il faut dans certains cas passer par une colonne temporaire ou une colonne temporaire que l'on renomme ensuite.
Ce dernier cas provoque un effet de bord, en effet, la colonne supplémentaire est crée en dernière colonne puis renommé, ce qui ne correspond plus à l'ordre des colonnes que l'on avait avant.
Exemple dans attachment :
ALTER TABLE SB_Attachment_Attachment ADD (attachmentLogicalName_tmp VARCHAR2);
UPDATE SB_Attachment_Attachment SET attachmentLogicalName_tmp = attachmentLogicalName;
ALTER TABLE SB_Attachment_Attachment DROP COLUMN attachmentLogicalName;
ALTER TABLE SB_Attachment_Attachment RENAME COLUMN attachmentLogicalName_tmp TO attachmentLogicalName;
ALTER TABLE SB_Attachment_Attachment MODIFY attachmentLogicalName NOT NULL;
C'est le cas des modules Attachment et versioning et cela provoque une erreur lors de l'accès aux fichiers joints d'une publication.
Préconisation: il vaut mieux passer par une table temporaire plutot que par une colonne temporaire.