sur un SPIP 4.2.5 (GIT 4.2: 5dbe29b5) tout frais, après installation du plugin (avec succès ce coup-ci :) ), j'ai cette erreur sur la page d'un article /ecrire/?exec=article&id_article=1 :
Erreur SQL 1146Table 'dev_blocks.spip_blocktypes' doesn't existSELECT 0+blocktypes.titre AS num, CASE ( 0+blocktypes.titre ) WHEN 0 THEN 1 ELSE 0 END AS sinum, blocktypes.titre, blocktypes.id_blocktype, blocktypes.description FROM spip_blocktypes AS `blocktypes` WHERE (blocktypes.id_blocktype NOT IN ('')) ORDER BY sinum, num, blocktypes.titre
Designs
Éléments enfants
...
Afficher les éléments fermés
Éléments liés
0
Reliez des issues pour mettre en évidence leur relation.
En savoir plus.
2023-09-12 20:14:30 127.0.0.1 (pid 1780) :Pri:ERREUR: Erreur 1170 de mysql: BLOB/TEXT column 'identifiant' used in key specification without a key lengthin C:\www\_dev\4.2\ecrire\base\create.php L73 [sql_create(),creer_ou_upgrader_table(),alterer_base(),creer_base(),admin_repair_tables(),base_repair_dist(),inc_admin_dist(),exec_base_repair_dist()]CREATE TABLE IF NOT EXISTS `dev_spip4-2`.spip_blocktypes ( id_blocktype bigint(21) NOT NULL auto_increment, titre text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT "", description text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT "", identifiant text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT "", saisies text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT "", objets text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT "", maj timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (id_blocktype), UNIQUE KEY identifiant (identifiant)) DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci2023-09-12 20:14:31 127.0.0.1 (pid 1780) :Pri:ERREUR: Erreur 1170 de mysql: BLOB/TEXT column 'identifiant' used in key specification without a key lengthin C:\www\_dev\4.2\ecrire\base\create.php L82 [sql_create(),creer_ou_upgrader_table(),alterer_base(),creer_base(),admin_repair_tables(),base_repair_dist(),inc_admin_dist(),exec_base_repair_dist()]CREATE TABLE IF NOT EXISTS `dev_spip4-2`.spip_blocktypes ( id_blocktype bigint(21) NOT NULL auto_increment, titre text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT "", description text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT "", identifiant text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT "", saisies text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT "", objets text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT "", maj timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (id_blocktype), UNIQUE KEY identifiant (identifiant)) DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
BLOB/TEXT column 'identifiant' used in key specification without a key length
Il faut que je passe ce champ en varchar(255), comme dans le plugin identifiants (c'est le même champ en fait).
Mais sur un site en prod où je l'ai installé très récemment (pour gérer le contenu des infolettres du plugin newsletter, trèèès pratique ^^), les tables se sont justement créées en InnoDB au lieu de MyIsam sans que j'ai précisé le _MYSQL_ENGINE
Ça, c'est bizarre mais bon, problème interne à spip.
Ça montre quand même que ça doit dépendre de la version du moteur de bdd, certaines sont apparemment plus permissives.
Saurais tu dire si tu es en Mysql / Mariadb, et quelle version ?