[Powered by Google Translate] [SQL] [CHRISTOPHER BARTHOLOMEW] [HARVARD UNIVERSITY] [C'EST CS50] [CS50 TV] Ainsi, les programmeurs utilisent des bases de données comme un outil pour stocker et organiser nos données persistantes dans les tables. Cela signifie que vos données sont stockées sur la non-volatiles médianes comme un disque dur, et même lorsque l'ordinateur est éteint, les données sont toujours intacts. Et, en tant que programmeurs, nos programmes utilisent des bases de données pour les scénarios tels que le stockage informations utilisateur à partir des formulaires Web, levant les yeux inventaire, ou la mise à jour des informations sur quels sites afficher. Mais comment pouvons-nous réellement interagir avec notre base de données, ou qu'est-ce que nous utilisons pour lire, enregistrer, supprimer, et mettre à jour nos données dans ces tables de bases de données? Eh bien, la réponse est que nous utilisons un type particulier de langage de base qui interagit directement avec nos tables de bases de données. Son nom est Structured Query Language, [Structured Query Language] ou ce que j'appelle SQL. Maintenant, [Se-Quel], ou SQL, n'est pas un langage de programmation, mais à la place, c'est une langue qui fournit un ensemble standard de commandes pour extraire et manipuler les données d'une variété de systèmes de gestion de bases de données. Aux fins de la CS50, nous allons passer en revue quatre commandes de base: sélectionner, insérer, mettre à jour et supprimer. En outre, nous allons utiliser une interface web base de données appelée phpMyAdmin, qui est installé sur l'appareil d'écrire nos instructions SQL. Donc, pour vous aider à se souvenir de ces commandes, J'ai apporté quelques petits gâteaux dans un placard pour aider avec nos scénarios. Disons que vous avez une base de données de cupcake, où vous stockez toutes les informations sur vos petits gâteaux. Maintenant, bases de données peut contenir plusieurs tables et les tableaux eux-mêmes peuvent contenir plusieurs colonnes. A l'intérieur de notre base de données de cupcake, nous avons une table appelée cupcake_cupboard. Ce tableau sera utilisé pour stocker toutes les informations sur les petits gâteaux qui sont, eh bien, dans votre placard. Les colonnes qui sont à l'intérieur de votre tableau représentent les attributs d'un petit gâteau. Par exemple, les colonnes de la cupcake_cupboard sont Gâteau d'identité, CakeType, CakeColor et CakeIsNice. Cette colonne booléenne typé est utilisé pour déterminer si le gâteau est bon ou pas bon. Nous allons commencer par écrire une instruction select. Instructions Select sont utilisées pour récupérer des données d'une table de base de données particulière. Dans ce scénario, nous voulons tout savoir sur tous les petits gâteaux qui existent dans notre placard. La syntaxe pour ce faire est la star de "Select" espace, ou *, l'espace de l'espace de notre table, qui est cupcake_cupboard. Allons de l'avant et d'exécuter cela. Comme nous pouvons le voir, ce sont tous les petits gâteaux dans notre placard. Il est important de noter que *, ou un astérisque, est un caractère joker qui représente la collecte de toutes les colonnes d'une certaine table. Normalement, nous pouvons accéder à une colonne spécifique ou colonnes en remplaçant * avec le nom de colonne réelle. Si nous voulons que plusieurs colonnes, mais pas tous, nous pouvons atteindre cet en écrivant les noms de colonnes qui délimitent chaque colonne par une virgule. Par exemple, nous allons seulement récupérer le CakeId et CakeType dans le tableau cupcake_cupboard. La syntaxe pour ce faire est la suivante: SELECT espace CakeID par des virgules Espace CakeType de notre table, cupcake_cupboard. Allons de l'avant et d'exécuter cela. Et ici, nous avons maintenant seulement les deux colonnes que nous avons spécifiées pour chaque petit gâteau dans notre placard. On peut aussi affiner nos résultats de la requête en spécifiant la "Where" juste après le nom de la table. Par exemple, il semble y avoir un petit gâteau dans notre placard c'est, eh bien, pas si agréable à regarder. Essayons d'imaginer tous les petits gâteaux dans notre placard qui sont, eh bien, pas si agréable à regarder en utilisant le "Where". La syntaxe pour ce faire est la suivante: SELECT * espace espace espace DE cupcake_cupboard espace lorsque l'espace de notre colonne conditionnelle, dans ce cas CakeIsNice = et la valeur booléenne False. Il est important de noter que si vous utilisez des chaînes, vous devez le placer entre guillemets simples. Cela est vrai pour toutes les chaînes SQL, ou, en termes de bases de données SQL, variante caractères connu sous le nom varchar. Dans ce cas, nous utilisons Vrai ou faux, ce qui est une valeur booléenne et non une chaîne. Allons de l'avant d'exécuter cette commande. Et voilà, il est vrai que nous avons 1 chocolat pas si gentil petit gâteau dans notre placard. Ensuite, nous allons écrire une instruction insert. Déclarations d'insertion sont utilisés pour insérer ou ajouter rangées supplémentaires de données dans votre base de données. Revisiter notre scénario, supposons que nous venons de faire un petit gâteau tout neuf. Étant donné que nous sommes très organisés mangeurs de petit gâteau, nous allons devoir insérer ce petit gâteau nouvelle dans notre tableau cupcake_cupboard. La syntaxe pour ce faire est la suivante: Insérer un espace dans l'espace de notre table, cupcake_cupboard, espace (, et ici nous spécifier les noms de colonnes, séparées par une virgule, Virgule CakeType CakeColor virgule CakeIsNice) l'espace. Suite à cela, nous écrivons le mot espace VALUES (et ici nous entrons dans la valeur de chaque colonne, respectivement, également délimité par une virgule. Apostrophe, car elles sont toutes les valeurs Varchar nous allons les entourer de guillemets simples, LIGHT 'virgule' BEURRE D'ARACHIDE BROWN virgule True. Maintenant, il est important de donner à chaque ligne un numéro unique pour se faire identifier. Autoincrementing une colonne fournit ce que  "Il n'ya pas deux les mêmes ID ne peut jamais exister dans ce tableau." Allons de l'avant et à exécuter. Nous y voilà, tout organisé. L'instruction SQL suivante que nous allons écrire une déclaration de mise à jour. L'instruction update permet de modifier des données dans une colonne pour toute ligne existante dans votre base de données. Plus tôt dans notre scénario, en utilisant une instruction select, nous avons identifié un petit gâteau au sein de notre tableau de cupcake_cupboard dont la valeur CakeIsNice était faux. Supposons que, bien que notre petit gâteau au beurre d'arachide était dans le four, nous avons fait notre petit gâteau n'est pas si gentil très gentil. Étant exceptionnellement organisé, nous voulons que notre petit gâteau pour refléter cette valeur dans notre tableau cupcake_cupboard. Par conséquent, nous allons mettre à jour notre petit gâteau de chocolat dans la base de données pour refléter cela. La syntaxe est la suivante: l'espace UPDATE notre table, cupcake_cupboard, espace SET espace la colonne que nous voulons changer, CakeIsNice =. Alors voilà, nous mettons notre espace nouvelle valeur True. Maintenant, parce que nous ne voulons pas mettre à jour toutes les lignes avec cette valeur, nous voulons offrir un "Where" qui nous localiser à la ligne exacte que nous voulons modifier. Dans ce cas, nous savons qu'il n'y a qu'un seul petit gâteau qui a une valeur CakeIsNice False. Par ailleurs, nous allons aussi nous assurer que nous mettons à jour la ligne correcte en utilisant le "Et" clause. Nous utilisons le "Et" clause d'affiner notre interrogation. Dans ce cas, parce que nous savons que le cupcake est au chocolat, nous allons utiliser cette colonne CakeType. Lorsque l'espace de notre espace conditionnelle colonne CakeIsNice espace = False, et l'espace CakeType = 'CHOCOLAT. Ainsi, il met tous ensemble, cette déclaration dit mise à jour trouver tous les petits gâteaux dans notre placard gâteau, et si il ya un petit gâteau dont la colonne CakeIsNice contient la valeur False et CakeType contient CHOCOLATE, nous voulons mettre à jour la valeur spécifique CakeIsNice lignes à True. Donc, nous allons aller de l'avant et exécutez l'instruction. Et maintenant, nous sommes organisés. Toute cette histoire de petits gâteaux m'a fait un peu faim. Je pense que je devrais me servir un. Mais si j'ai vraiment manger ce gâteau, je devrais au moins aussi enlever son existence  de notre table cupcake_cupboard. Pour ce faire, nous allons utiliser le bouton "Supprimer" déclaration. Le "Supprimer" déclaration peut être utilisée pour enlever tout ou partie des lignes de la table. Si vous souhaitez supprimer certains ligne spécifique de la table, vous devez fournir une "Where", précisant ainsi une colonne qui doit être unique à la ligne que vous souhaitez supprimer. Voici la syntaxe: DELETE FROM espace espace de notre table, cupcake_cupboard, l'espace. Maintenant, à ce moment-là, quand vous êtes loin de votre instruction delete vous voulez être très prudent. Par exemple, si je veux exécuter cette requête est que sans fournir certains "Where" Je perdrais toutes les données de ce tableau cupcake_cupboard, mais parce que je sais déjà que mes identifiants sont uniques gâteau, je vais utiliser l'ID de velours rouge gâteau pour mon "Where". Lorsque l'espace de notre colonne, CakeID = 1. Comme il s'agit d'une valeur entière qu'il n'est pas nécessaire de l'entourer de guillemets simples. Donc, nous allons exécuter l'instruction. Eh bien, maintenant que nous avons essuyé l'existence de ce petit gâteau de notre table cupcake_cupboard, nous n'avons qu'une seule chose à faire: Faire disparaître. Je suis Christopher Barthélemy. C'est CS50.