Projet

Général

Profil

Actions

Anomalie #409

fermé

MàJ base d'une .63 table dynamic_fields

Ajouté par Geoffrey Mosini il y a environ 12 ans. Mis à jour il y a environ 12 ans.

Statut:
Rejeté
Priorité:
Normal
Assigné à:
-
Catégorie:
Database
Version cible:
-
Début:
06/11/2012
Echéance:
% réalisé:

0%

Temps estimé:
Version utilisée:

Description

La base originale avait déjà une clé primaire : PRIMARY KEY (`item_id`,`field_id`)
Or dans le script de màj de la 0,7,0,2 dans le fichier upgrade-to-0.70-mysql.sql à la ligne 54 :

ALTER TABLE `galette_dynamic_fields` ADD PRIMARY KEY ( `item_id` , `field_id` , `field_form` , `val_index` );

Il faudrait rajouter une suppression de clé primaire sinon une erreur #1068 est jetée. J'ai corrigé comme suit et le script de màj fonctionne maintenant sans relever d'erreurs :
ALTER TABLE `galette_dynamic_fields` DROP PRIMARY KEY;
ALTER TABLE `galette_dynamic_fields` ADD PRIMARY KEY ( `item_id` , `field_id` , `field_form` , `val_index` );

Fichiers

structure_galette.sql (10,3 ko) structure_galette.sql Geoffrey Mosini, 10/11/2012 12:16

Mis à jour par Johan Cwiklinski il y a environ 12 ans

  • Statut changé de Nouveau à Rejeté
  • Assigné à Johan Cwiklinski supprimé

Je viens de vérifier dans les scripts MySQL ; il n'y a pas de clé primaire existante en 0.63 (confer le fichier mysql.sql de la version 0.63.4).

Mis à jour par Geoffrey Mosini il y a environ 12 ans

Voici la structure, il me semble que cela devrait être une 0.63.4 mais difficile de dire à partir de quelle version elle a été créée.

Je ne vois pas l'intérêt de ne pas intégrer cette modification vu qu'il s'agit d'une sécurité, dans mon cas cette clé primaire était là, même si je ne connais pas l'origine de sa présence.
À mon sens c'est un automatisme de le faire, tout comme on trouve dans vos scripts "CREATE TABLE IF NOT EXISTS" et non pas "CREATE TABLE" simple.

Actions

Formats disponibles : Atom PDF