Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Débuter
Débuter Forum d'entraide pour débuter avec MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/11/2010, 16h57   #1
Invité de passage
 
Inscription : novembre 2010
Messages : 3
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 3
Points : 0
Points : 0
Par défaut renommer en minuscules toutes tables et champs d'une base

Salut à tous,

je cherche à faire un RENAME avec LOWER() sur toutes les tables et tous les fields d'une base (sur mySQL 5.1.44 sous MAMP) Je debute completement en SQL, et je n'ai pas encore trouvé comment faire ça proprement

j'essaye ça :
Code :
1
2
3
SELECT CONCAT('RENAME TABLE `', TABLE_NAME, '` TO `', LOWER(TABLE_NAME), '`;')
FROM information_schema.TABLES
WHERE TABLE_SCHEMA='mabase';
et même si ça dit OK ça fait rien Il doit me manquer un ordre (genre un UPDATE ?) Je ne sais pas non plus si TABLE_CONSTRAINTS va se mettre à jour ?

par ailleurs, je n'ai pas la moindre idée de comment faire pour les champs (de toutes les tables de cette base)

un p'tit coup de main svp ?
hadrian est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2010, 17h58   #2
Expert Confirmé Sénior
 
Avatar de qi130
 
Homme Pierre
Ingénieur qualité méthodes
Inscription : mars 2003
Messages : 3 726
Détails du profil
Informations personnelles :
Nom : Homme Pierre
Âge : 51
Localisation : France

Informations professionnelles :
Activité : Ingénieur qualité méthodes
Secteur : Finance

Informations forums :
Inscription : mars 2003
Messages : 3 726
Points : 4 739
Points : 4 739
Select ne fait que de la sélection... il te faut donc un update.

Toutes les informations dont tu as besoin sont décrites ici: http://dev.mysql.com/doc/refman/5.0/...ma-tables.html
__________________
"Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet)
-----------------------
Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MP
Usus magister est optimus
qi130 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2010, 09h06   #3
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 957
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 10 957
Points : 18 165
Points : 18 165
Envoyer un message via MSN à CinePhil
Citation:
Envoyé par Documentation MySQL
Dans INFORMATION_SCHEMA, il existe plusieurs tables en lecture seule. Ce sont en fait des vues, et non pas des tables
On ne peut pas faire d'UPDATE sur le schéma information_schema.

On peut par contre récupérer les noms existants et passer par une procédure en SQL ou en PHP par exemple pour faire une série de ALTER TABLE qui va transformer les tables de la BDD.

Bon courage ! Si la BDD n'est pas trop grosse, ce sera peut-être plus rapide de le faire à la main.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2010, 14h16   #4
Invité de passage
 
Inscription : novembre 2010
Messages : 3
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 3
Points : 0
Points : 0
Par défaut et pour les champs ?

merci !

Zut, moi qui pensais faire ça en qqs secondes ;-)

pour les tables, j'en ai une trentaine, et à la main via phpmyadmin, c'est possible. ça prends du temps, mais c'est bon.

par contre, je dois aussi passer en minuscules les fields : tous les champs de la base, et là, par contre, à la mano ça ne sera pas possible.

je ne parle pas encore le sql couramment (ça trois jours que j'ai commencé), mon problème c'est la syntaxe

si vous avez une piste (ou un lien vers un bout de code ) ? svp svp
hadrian est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2010, 14h30   #5
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 957
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 10 957
Points : 18 165
Points : 18 165
Envoyer un message via MSN à CinePhil
Au fait pourquoi veux-tu tout mettre en minuscules alors que la base est déjà créée ?
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2010, 14h40   #6
Invité de passage
 
Inscription : novembre 2010
Messages : 3
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 3
Points : 0
Points : 0
j'ai hérité de cette base, avec des noms à la c*n (infoGeo, isNear, ...) et le CMS que je veux brancher dessus préfère les minuscules (des histoires de jointures & co).

Je ne peux pas modifier le code du CMS pour ajouter fissa une p'tite fonction php qui me passerai tout ce qui arrive de la base en lowercase (pour garder la compatibilité avec les futures versions)

Et ya pas que lui, moi aussi, je veux des minuscules c'est infiniment plus simple pour coder

as tu une idée ?
hadrian est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h15.


 
 
 
 
Partenaires

Hébergement Web