Maison >base de données >tutoriel mysql >Pourquoi est-ce que j'obtiens l'erreur MySQL 1064 dans XAMPP lors de l'ajout d'un index ?

Pourquoi est-ce que j'obtiens l'erreur MySQL 1064 dans XAMPP lors de l'ajout d'un index ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-08 04:22:10184parcourir

Why Am I Getting MySQL Error 1064 in XAMPP When Adding an Index?

Dépannage de l'erreur MySQL 1064 dans XAMPP

Lors de l'exécution de commandes SQL dans MySQL Workbench dans XAMPP, les utilisateurs peuvent rencontrer l'erreur 1064 : "Vous avez une erreur dans votre syntaxe SQL. " Malgré l'apparition de l'état du serveur正常, cette erreur peut survenir de manière inattendue.

Dans ce cas particulier, le problème vient de l'utilisation du mot-clé VISIBLE lors de l'ajout d'un index sur la table des animaux :

ALTER TABLE `puppies`.`animals` 
ADD INDEX `Breed_idx` (`BreedID` ASC) VISIBLE;

Pour résoudre cette erreur, supprimez simplement le mot-clé VISIBLE car il n'est pas reconnu par MySQL. Voici la déclaration corrigée :

ALTER TABLE `puppies`.`animals` 
ADD INDEX `Breed_idx` (`BreedID` ASC);

Après avoir supprimé VISIBLE, l'exécution devrait se dérouler sans erreur.

Comprendre la différence entre MySQL et MariaDB

Ce problème est dû à un malentendu concernant les différences de syntaxe entre MySQL et MariaDB. XAMPP utilise MariaDB par défaut, qui a une syntaxe distincte sous certains aspects. Le mot-clé VISIBLE n'est applicable que dans MySQL.

Dans MariaDB, la création d'un index sans préciser sa visibilité le marque implicitement comme visible. Il n'est donc pas nécessaire d'inclure explicitement le mot-clé VISIBLE.

Matériaux de référence

Pour plus de précisions sur ce sujet, consultez les ressources suivantes :

  • [Documentation MariaDB sur l'index Visibilité](https://jira.mariadb.org/browse/MDEV-7317)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn