MySQL
Voici quelques astuces dont je me sers souvent, pour ne pas avoir à systématiquement les rechercher, je m’en suis fait une copie dans un petit champ texte :
Création d’une base de données
Important : d’abord sans le Très important : si vous tapez ce qui suit avec pour objectif de convertir la table et les données cela ne fonctionnera pas : Ici, je renomme la clé primaire « Pour changer la valeur d’un auto_inc (‘réinitialiser la valeur’, comme on le dit dans MySQL ici) :Créer un utilisateur pour une base de données (la manière sale)
'.*'
.
Très important : ici on autorise tout à l’utilisateur qui va être crée. C’est donc une méthode rapide mais de bourrin et ce n’est pas la bonne méthode si vous voulez faire un utilisateur proprement, destiné à exister pour longtemps. Dans ce cas il faut faire quelque chose de plus précis afin de ne pas tout lui autoriser.
GRANT ALL PRIVILEGES ON bd TO 'nomutilisateur'@'192.168.2.16' IDENTIFIED BY 'motdepasse';
GRANT ALL PRIVILEGES ON bd.* TO 'nomutilisateur'@'192.168.2.16' IDENTIFIED BY 'motdepasse';Initialisation d’une variable via une requête :
SELECT @MON_ID:= ID FROM matable WHERE CHAMP='champ_recherche';
puis on se ressert de cette variable pour faire une insertion en base de données :
INSERT INTO autre_table (ID_CLE_EXTERNE, DESCRIPTION, DOCUMENT) VALUES
(@MON_ID, 'valeur1', './valeur2');Relancer le service MySQL
service mysqld stop
service mysqld start
Convertir une table en utf8 :
ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;
Ce n’est qu’en utilisant les ordres suivants que la conversion sera faite par MySQL !
ALTER TABLE t1 CHANGE c1 c1 BLOB;
ALTER TABLE t1 CHANGE c1 c1 TEXT CHARACTER SET utf8;
Renommer un champ :
ID
» et je la passe en minuscules (« id
« ) :
ALTER TABLE ville CHANGE ID id int(11) NOT NULL auto_increment;
Modification des
AUTO_INC
ALTER TABLE tbl_name AUTO_INCREMENT = N;