Comment écrire des scripts SQL
SQL, ou Structured Query Language, qui permet la création et l'édition de bases de données, est l'un des langages de programmation basés sur le Web les plus faciles à comprendre. Pourtant, beaucoup de gens ne s'embêtent pas à apprendre les tenants et aboutissants de SQL car les gestionnaires de bases de données comme phpMyAdmin vous permettent de créer, modifier et afficher des tableaux sans connaître de code. Apprendre à écrire vos propres scripts SQL n'est pas trop chronophage et s'avérera énormément utile lors de la création de sites Web remplis de données.
Explorer la syntaxe SQL
Apprenez la syntaxe SQL appropriée. Traditionnellement, les commandes SQL sont toutes en majuscules, tandis que les noms de vos tables et toutes vos données de champ personnelles sont en minuscules. Comme en PHP, toutes les instructions se terminent par un point-virgule, mais ces instructions peuvent être divisées en lignes séparées de la manière que vous voulez (pour faciliter la lisibilité).
Rechercher les types de données SQL
Familiarisez-vous avec les types de données SQL – la façon dont SQL identifie les informations que vous avez dans tous les champs de vos tableaux. Les plus courants sont INT (pour les entiers allant de -2 milliards à 2 milliards), BIGINT (pour les entiers plus grands ou plus petits que cela), VARCHAR (texte jusqu'à 256 caractères) et TEXT (texte jusqu'à environ 64 000 caractères).
Comprenez le besoin de clés primaires. En pratique, chaque tableau que vous créerez aura une colonne « ID » contenant un nombre unique – étiqueté « clé primaire » – pour s'assurer qu'aucun « enregistrement » (ou ligne) n'est le même.
Créer un nouveau tableau
Créez un tableau dans votre base de données en utilisant la commande CREATE TABLE. Pendant votre pratique, vous créerez souvent le même tableau encore et encore, donc il est souvent utile de le précéder par la commande DROP TABLE IF EXISTS pour que les données ne commencent pas à déborder et à vous confondre. Voici la première chose que vous écririez pour créer un tableau appelé « films » : DROP TABLE IF EXISTS films; CREATE TABLE films ();
Ajoutez des noms de champs, ou noms de colonnes, au tableau. Jusqu'à présent, « films » est complètement vide. Pour le remplir avec des données sur vos films préférés, vous pourriez vouloir une colonne « Titre », une colonne « Réalisateur » et une colonne « Année » – en plus de la colonne « id » qui contient la clé primaire. Vous ajoutez cette information à l'intérieur des parenthèses de la ligne CREATE TABLE.
Remarquez qu'après chaque nom de champ, vous devez déclarer quel type de données il est. De plus, bien que SQL détermine automatiquement la longueur des entiers, vous devez déclarer la longueur maximale de toutes les données textuelles. Donc dans le code ci-dessus, les entrées dans le champ « titre » ne peuvent pas dépasser 60 caractères, et les entrées dans le champ « réalisateurs » ne peuvent pas dépasser 30.
Insérer des données dans votre tableau
Ajoutez des données à vos tableaux. Vous avez maintenant un tableau appelé « films » avec des colonnes pour la clé primaire du film, le titre, le réalisateur et l'année, mais rien dans ces colonnes. Pour ajouter des données, utilisez la commande INSERT INTO. Les données sont insérées un enregistrement (ligne) à la fois. Donc sous tout le code CREATE TABLE ci-dessus, les commandes INSERT INTO ressembleraient à quelque chose comme ceci : INSERT INTO films VALUES (null, 'Casablanca', 'Michael Curtiz', 1942); INSERT INTO films VALUES (null, 'Star Wars', 'George Lucas', 1977); INSERT INTO films VALUES (null, 'Psychose', 'Alfred Hitchcock', 1960);
Utilisez la commande SELECT pour extraire des informations spécifiques d'un tableau. Lorsque vous utilisez un gestionnaire de base de données comme phpMyAdmin, cela vous permet d'obtenir rapidement les données dont vous avez besoin. Si vous voulez regarder les titres des films dans votre tableau, vous écririez : SELECT titre FROM films; Si vous voulez regarder un tableau entier, utilisez un astérisque : SELECT * FROM films; Si vous voulez être spécifique, utilisez la commande WHERE : SELECT titre FROM films WHERE réalisateur = 'Alfred Hitchcock'; Cela affichera le nom de chaque film dans votre tableau réalisé par Alfred Hitchcock. Si vous décidiez que vous aviez besoin d'un autre film d'Hitchcock, utilisez simplement la commande INSERT à nouveau : INSERT INTO films VALUES (null, 'La Mort aux trousses', 'Alfred Hitchcock', '1959');
Modifier vos données
Modifiez vos données en utilisant les commandes UPDATE et SET. Dans l'exemple ci-dessus, la date pour « La Mort aux trousses » est définie comme 1956. C'est incorrect ; elle est en fait sortie en 1959. Pour corriger l'erreur, vous écririez : UPDATE films SET année = '1959' WHERE titre = 'La Mort aux trousses';
Supprimez des données en utilisant la commande DELETE FROM. Si vous décidez que vous n'aimez plus « Psychose » et voulez vous en débarrasser, vous écririez : DELETE FROM films WHERE id = 3; Remarquez dans la commande ci-dessus, « Psychose » est supprimé en fonction de sa clé primaire, pas de son titre. Vous pourriez juste écrire : DELETE FROM films WHERE titre = "Psychose"; Cependant, et si un autre film dans votre tableau s'appelait « Psychose » que vous aviez oublié ? Les deux seraient supprimés. Soyez très prudent chaque fois que vous utilisez DELETE.
