Question

Revisiter MySQL et essayer de changer la structure de la table. Je veux changer deux lignes d'un varchar (30) à plus haut.

Je l'ai googlé et j'ai essayé ce qui semble être la bonne déclaration, mais j'obtiens une erreur de syntaxe:

ALTER TABLE 'compdetails' CHANGE 'compName' varchar(60) not null;

Cette instruction me donne cependant une erreur de syntaxe. J'ai également essayé sans les noms de la table / colonnes sans aucune chance.

"Erreur 2064 (42000): Vous avez une erreur dans votre syntaxe SQL ...."

Quelqu'un peut-il me faire du jogging?

Était-ce utile?

La solution

Juste ainsi:

ALTER TABLE 'compdetails' CHANGE compName compName varchar(60) not null;

Autres conseils

Premièrement, si vous souhaitez citer les noms de table, vous devez utiliser les tiques de retour et non les citations simples. Une seule citation est uniquement utilisée pour les littéraux de cordes.

Deuxièmement, le changement est utilisé lorsque vous souhaitez renommer la colonne, tandis que Modify vous permet de modifier la définition de la colonne sans le renommer. Vous devriez donc utiliser:

ALTER TABLE compdetails MODIFY compName varchar(60) NOT NULL;

Le en ligne Documentation MySQL est très bon et je vous encourage à le vérifier chaque fois que vous rencontrez des problèmes de syntaxe.

ALTER TABLE `compdetails` MODIFY COLUMN `compName` varchar(60) not null;
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top