Problème avec UPDATE
Résolu/Fermé
A voir également:
- Problème avec UPDATE
- Windows update 0x80070643 - Accueil - Windows
- Windows update bloqué - Guide
- Asus live update - Télécharger - Utilitaires
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Nettoyage windows update - Guide
4 réponses
Utilisateur anonyme
Modifié par le père. le 13/02/2014 à 12:03
Modifié par le père. le 13/02/2014 à 12:03
Bonjour
Default est un mot réservé mysql.Tu ferais mieux de choisir un autre nom pour tes champs (comme Null et peut-être les autres, je n'ai pas vérifié).
Si tu veux les garder, tu peux quand même, mais entoure les noms de tables ou de champs avec des accents graves (Alt Gr 7, pas l'apostrophe du 4) :
De plus, comme status est, lui, une valeur, il faut le mettre entre apostrophes (du 4) sinon il sera pris comme un nom de champ.
Default est un mot réservé mysql.Tu ferais mieux de choisir un autre nom pour tes champs (comme Null et peut-être les autres, je n'ai pas vérifié).
Si tu veux les garder, tu peux quand même, mais entoure les noms de tables ou de champs avec des accents graves (Alt Gr 7, pas l'apostrophe du 4) :
UPDATE instance SET `Default`='0' WHERE Field='status';
De plus, comme status est, lui, une valeur, il faut le mettre entre apostrophes (du 4) sinon il sera pris comme un nom de champ.
polando
Messages postés
2
Date d'inscription
jeudi 13 février 2014
Statut
Membre
Dernière intervention
13 février 2014
Modifié par polando le 13/02/2014 à 12:15
Modifié par polando le 13/02/2014 à 12:15
Merci de m'aider, et ça avance !
En effet je n'avais pas pensé a essayer avec l'apostrophe du 7.
alors j'essai avec l'apostrophe du 7 autour de Field:
Même souci ...
Je vois que le nom des colones ne sont pas idéaux, cependant ce n'est pas moi qui a crée cette base ...
EDIT: on ne vois pas les différences d'apostrophe sur mon post ...
En effet je n'avais pas pensé a essayer avec l'apostrophe du 7.
mysql> UPDATE instance SET 'Default'='0' WHERE Field='status';
ERROR 1054 (42S22): Unknown column 'Field' in 'where clause'
alors j'essai avec l'apostrophe du 7 autour de Field:
mysql> UPDATE instance SET 'Default'='0' WHERE 'Field'='status';
ERROR 1054 (42S22): Unknown column 'Field' in 'where clause'
Même souci ...
Je vois que le nom des colones ne sont pas idéaux, cependant ce n'est pas moi qui a crée cette base ...
EDIT: on ne vois pas les différences d'apostrophe sur mon post ...
Utilisateur anonyme
13 févr. 2014 à 13:28
13 févr. 2014 à 13:28
Pour les apostrophes qui ne sont pas différenciés, c'est habituel. Ce site a une manière bien particulière de 'bricoler' les caractères spéciaux, je me demande pourquoi mais je l'ai toujours connu comme ça. Pour voir ces accents graves, il faut mettre l'entité HTML correspondante. Pour ce caractère, c'est `
je n'avais pas pensé a essayer avec l'apostrophe du 7 Dommage, c'est pourtant la syntaxe normale de mysql. Ce n'est pas un truc 'à essayer', c'est ce qui est prévu dans la syntaxe du langage, ça fait quand même partie des règles de base.
Pour en arriver à ton 'unknown column', je pense que c'est parce que ce champ n'existe effectivement pas. Je pense, comme je l'ai dit dans ma remarque de 12h06, que tu essayes non pas de modifier une valeur de ta table, mais sa définition.
Danc ce cas, il faut faire :
Mais normalement, ceci est facile à faire à la main avec php myadmin. Personnellement, je n'ai jamais eu besoin d'écrire une requête comme ça.
je n'avais pas pensé a essayer avec l'apostrophe du 7 Dommage, c'est pourtant la syntaxe normale de mysql. Ce n'est pas un truc 'à essayer', c'est ce qui est prévu dans la syntaxe du langage, ça fait quand même partie des règles de base.
Pour en arriver à ton 'unknown column', je pense que c'est parce que ce champ n'existe effectivement pas. Je pense, comme je l'ai dit dans ma remarque de 12h06, que tu essayes non pas de modifier une valeur de ta table, mais sa définition.
Danc ce cas, il faut faire :
ALTER TABLE instance CHANGE status status ENUM( '0', '1' ) NOT NULL DEFAULT '0'
Mais normalement, ceci est facile à faire à la main avec php myadmin. Personnellement, je n'ai jamais eu besoin d'écrire une requête comme ça.
polando
Messages postés
2
Date d'inscription
jeudi 13 février 2014
Statut
Membre
Dernière intervention
13 février 2014
13 févr. 2014 à 14:36
13 févr. 2014 à 14:36
En effet c'est un ALTER TABLE qu'il faut. Comme tu a pu remarquer je suis loin d'être un pro en SQL.
Cela aurai surement été plus simple avec PhpMyAdmin, cependant la situation de mon serveur sur le réseau aurai rendu son accès compliquer depuis mon poste physique.
Je te remercie de m'avoir aidé.
Sujet résolu.
Cela aurai surement été plus simple avec PhpMyAdmin, cependant la situation de mon serveur sur le réseau aurai rendu son accès compliquer depuis mon poste physique.
Je te remercie de m'avoir aidé.
Sujet résolu.
13 févr. 2014 à 12:06