Comment écrire des scripts SQL
Crédit d'image : avoine/iStock/GettyImages
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 Web les plus faciles à comprendre. Pourtant, beaucoup de gens ne prennent pas la peine d'apprendre les tenants et les aboutissants de SQL car les gestionnaires de bases de données tels que phpMyAdmin vous permettent de créer, éditer et afficher des tables sans connaître aucun code. Apprendre à écrire vos propres scripts SQL ne prend pas trop de temps et s'avérera extrêmement utile lors de la création de sites Web remplis de données.
Exploration de 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 champs personnels 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 comme vous le souhaitez (pour faciliter la lisibilité).
Vidéo du jour
Recherche de 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 tables. Les plus courants sont INT (pour les entiers allant de -2 milliards à 2 milliards), BIGINT (pour les entiers plus grands ou plus petit que cela), VARCHAR (texte jusqu'à 256 caractères) et TEXT (texte jusqu'à environ 64 000 caractères).
Comprendre le besoin de clés primaires. En pratique, chaque table que vous créez aura une colonne « ID » contenant un numéro unique – intitulé « clé primaire » – pour garantir qu'aucun « enregistrement » (ou ligne) n'est le même.
Création d'un nouveau tableau
Créez une table dans votre base de données à l'aide de la commande CREATE TABLE. Au cours de votre pratique, vous créerez souvent le même tableau encore et encore, il est donc souvent utile faire précéder cela avec la commande DROP TABLE IF EXISTS afin que les données ne commencent pas à déborder et à semer la confusion vous. Voici la première chose que vous écririez pour créer une table appelée "films": DROP TABLE IF EXISTS films; CREER TABLE films ();
Ajoutez des noms de champs ou des noms de colonnes à la table. Jusqu'à présent, "films" est complètement vide. Pour le remplir avec des données sur vos films préférés, vous voudrez peut-être 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 ces informations entre les parenthèses de la ligne CREATE TABLE.
Notez qu'après chaque nom de champ, vous devez déclarer de quel type de données il s'agit. De plus, alors que SQL détermine automatiquement la longueur des entiers, vous devez déclarer la longueur maximale de toutes les données de texte. Ainsi, 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 "directeurs" ne peuvent pas dépasser 30.
Insertion de données dans votre table
Ajoutez des données à vos tables. Vous avez maintenant une table appelée "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 à ceci: INSERT INTO movies VALUES (null, 'Casablanca', 'Michael Curtiz', 1942); INSÉRER DANS LES VALEURS des films (null, 'Star Wars', 'George Lucas', 1977); INSÉRER DANS LES VALEURS des films (null, 'Psycho', 'Alfred Hitchcock', 1960);
Utilisez la commande SELECT pour extraire des informations spécifiques d'une table. Lorsque vous utilisez un gestionnaire de base de données tel que phpMyAdmin, cela vous permet d'obtenir rapidement les données dont vous avez besoin. Si vous voulez regarder les titres des films dans votre table, vous écririez: SELECT title FROM films; Si vous voulez regarder une table entière, utilisez un astérisque: SELECT * FROM movies; Si vous voulez être précis, utilisez la commande WHERE: SELECT title FROM films WHERE réalisateur = 'Alfred Hitchcock'; Cela ferait apparaître le nom de chaque film de votre table réalisé par Alfred Hitchcock. Si vous avez décidé que vous aviez besoin d'un autre film d'Hitchcock, utilisez simplement la commande INSERT à nouveau: INSERT INTO movies VALUES (null, 'North by Northwest', 'Alfred Hitchcock', '1956');
Modification de vos données
Modifiez vos données à l'aide des commandes UPDATE et SET. Dans l'exemple ci-dessus, la date de "North by Northwest" est fixée à 1956. C'est inexact; il est en fait sorti en 1959. Afin de corriger l'erreur, vous écririez: UPDATE movies SET year = '1959' WHERE title = 'North by Northwest';
Supprimez les données à l'aide de la commande DELETE FROM. Si vous décidez que vous n'aimez plus "Psycho" et que vous voulez vous en débarrasser, vous écririez: DELETE FROM movies WHERE id = 3; Remarquez dans la commande ci-dessus que "Psycho" est supprimé en fonction de sa clé primaire et non de son titre. Vous pouvez simplement écrire: DELETE FROM movies WHERE title = "Psycho"; Cependant, et s'il y avait un autre film dans votre table intitulé "Psycho" que vous avez oublié? Ils seraient tous les deux supprimés. Soyez très prudent lorsque vous utilisez DELETE.