Projet

Général

Profil

Actions

Bug #3057

fermé

Erreur sur les fichiers joints suite au scripts Oracle de la 5.8.1

Ajouté par David Lesimple il y a plus de 12 ans. Mis à jour il y a plus de 12 ans.

Statut:
Closed
Priorité:
Urgent
Assigné à:
Catégorie:
Fichiers joints
Début:
20/03/2012
Echéance:
% réalisé:

0%

Temps estimé:
Temps passé:
Navigateur:
Tous
Votre version de Silverpeas:
5.8.1
Système d'exploitation:
Votre base de données:
Oracle
Livraison en TEST:
Livraison en PROD:

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.

Actions

Formats disponibles : Atom PDF