Transcription
1. Présentation de compétences en l'introduction: Hé les gars, mon nom est vrai pour Williams et je veux
prendre ce temps pour vous accueillir à mon tout nouveau cours, développement
Microsoft SQL Server pour tout le monde. Il s'agit d'un cours Zero to Hero dans le développement et l'interrogation de bases de données Microsoft SQL. Et toutes les conditions préalables à ce cours sont que vous disposez d'un ordinateur capable d'apprendre la technologie que nous allons utiliser et d'une volonté d'apprendre. Maintenant, dans ce cours, nous allons développer une petite base de données, assez
pratique sous la forme d'un système de gestion scolaire. Et ce que vous allez apprendre tout au long de ce parcours, c'est comment installer et configurer l'environnement de gestion SQL Server hold pour créer des bases de données, les
interroger, créer des tables, des
ensembles d'objets différents. Nous allons examiner les choses qui vous prépareraient à
être au moins un développeur de bases de données et, ou un administrateur de base de données. Maintenant, ce cours va être parfait pour vous si
vous êtes un débutant avec absolument aucune expérience, vous avez des connaissances de base sur les opérations de base de données, ou si vous voulez juste rafraîchir vos connaissances. Ou peut-être que vous utilisez une technologie
plus ancienne et que vous voulez faire progresser la technologie. Ce cours est pour tous. À la fin de ce cours, vous auriez tellement bougé dans cet environnement que vous allez
devenir un expert avec les concepts de base de données, les jargons de
bases de données et la façon d'exécuter. Avec ces nouvelles connaissances, vous devriez être en mesure d'augmenter leur capacité de marché et vos revenus. Bien sûr, impressionnez tout le monde autour de vous avec tout ce qui a dit et fait. Bienvenue au cours, et je vous verrai bientôt.
2. Introduction aux bases de données: c' est le bienvenu dans ce voyage passionnant. Présentation de SQL Server 2017. Je suis en voyage ou Williams, et c'est avec plaisir que je partage cette connaissance avec vous pour cette vidéo. Nous allons juste prendre une vue d'ensemble
très, très léger à haut niveau. Quel est le serveur SQL bases de données Andi. Quelles sont les données et comment nous pouvons nous y rendre pour comprendre pourquoi ces connaissances seront nécessaires. Aller de l'avant. Tout d'abord, nous avons besoin orteil évaluer. Qu' est-ce que les données sur ce qui est une base de données qui, en termes simples, ni ne peut être des faits liés à un objet que, en termes plus pratiques, données peuvent être tout ce qui relie orteil quelqu'un ou quelque chose. Donc mon nom, mon prénom, Proforma. Nom de famille Williams. Ce sont des données sur moi, qui serait l'objet dans ce scénario, ou vous avez un plein quelle est sa couleur ? C' est noir. Ce sont des bits de données relatives à l'objet, qui est un téléphone. Donc, les données décrivent collectivement un objet sur puis par extension, une base de données est une collecte systématique de ces données sur une base de données alos us toe store. Ces données sur manipulé, vous savez, si vous avez besoin de changer quelque chose sur un objet que les bases de données où vous allez faire ces modifications sur. En conséquence, une base de données est censée faciliter la gestion de ces données. Non, cela nous amène à ce qu'est SQL Server et comment il nous aide avec les bases de données. Maintenant, SQL Server est un système de gestion de base de données relationnelle ou pour court R D B M s s système de
gestion de base de données sont D D. M s est un programme qui permet de manipuler l'accès des utilisateurs. Andi représente la vita comme nous le voulons. Donc, en d'autres termes, le D. B. M s est notre quartier dans cette base de données, nous
permettant aux utilisateurs de manipuler sur les données d'accès à volonté Qu'aucun serveur SQL ne vient dans
quelques ajouts sur leur liste là-bas. Nous avons exprimé, ce qui est libre. C' est vraiment léger. C' est pour, tu sais, un développement rapide, des projets
rapides. Vous venez de l'installer sur votre hors du cultivé rapidement et c'est un sera l'utilisation pour le reste des scores. Nous avons également l'édition Developer, qui est une gamme complète de bateaux d'édition d'entreprise. La licence est vraiment seulement pour le test et le développement, donc vous ne devriez pas être en production avec une licence de développeur. D' accord, puis standard et d'entreprise. Un vraiment plus adapté pour les grandes entreprises avec d'énormes quantités de données hors données. Et ils ont vraiment besoin d'un moyen structuré de stocker les orteils afin que les différentes parties de leur entreprise puissent en profiter. Non, nous explorons. Qu' est-ce que SQL No sq Eliza langage standard qui nous permet de parler orteil aux bases de données. L' abréviation est vraiment courte pour le langage de requête structuré ci-dessous. J' ai quelques exemples de ce que cette langue peut ressembler. Tout ce qui est dans toutes les majuscules est en fait la syntaxe relative à la langue sur ce qui n'est pas dans nos majuscules est liée à la base de données elle-même. Donc, en d'autres termes, nous avons, eh bien, des abeilles de données ou des tables parties de la base de données, donc les clients sont une table dans votre base de données sur. Ensuite, nous pouvons voir où nous voyons une étoile sélectionnée ou un astérisque des clients, ce qui signifie que nous voulons tous les enregistrements des clients. Sachez que c'est juste une amorce. Ne paniquez pas ou quoi que ce soit. Nous allons entrer dans les détails, et nous avons beaucoup d'activités à venir où nous allons réellement plonger dans le langage bases de données sur nous allons obtenir un nettoyage sur la compréhension peu claire de l'ensemble de SQL Server 2017 nous
aidera à gérer nos bases de données encore mieux. Restez donc autour de la vidéo suivante, nous allons installer et configurer notre serveur.
3. Télécharger et installer SQL Server Express 2017 2017: comme bienvenue à la première vidéo du discours. Présentation de SQL Server 2017 sur le Today examinera le téléchargement et l'installation ce logiciel bit off. Maintenant, une base de données est à peu près une collection logique de données connexes sur C'est tout. En un mot. Si vous avez déjà de l'expérience avec les bases de données, il est probablement venu avec Microsoft Access ou mon SQL. Et vous voulez juste étendre vos connaissances au-delà de cela. Et même si vous n'avez aucune connaissance préalable des bases de données, c'est un excellent cours pour vous familiariser avec ce dont les bases de données sont capables. Quelle préparation utilisable en place sur la façon dont vous pouvez commencer votre parcours vers devenir administrateur de base de données ou simplement manipuler les données dans les bases de données. Comme je l'ai déjà dit, nous allons explorer tous ces concepts à l'aide de Microsoft SQL Server 2017. Andi. Je l'ai déjà sur mon écran. La page de Ne pas perdre. J' ai donc inclus le U. R L, comme indiqué ici dans les notes de classe, et cela vous amènerait à télécharger le moteur de base de données Microsoft SQL Server 2017 express sur la courte description est qu'il est un puissant et système de gestion de base de données fiable qui vous permet de construire des sites Web légers et leur application d'arrêt. Donc c'est plutôt bon. Assez décent est un lieu de départ décent. Si vous n'avez pas cette machine haut de gamme haute spécification, il a une machine régulière. Tu veux juste commencer. C' est une excellente option. Il y a d'autres ajouts que vous verrez probablement dans votre recherche, mais si vous suivez ce lien, il va couper tout ce bruit et toutes les autres éditions. Et nous pouvons commencer avec express pour que vous puissiez aller de l'avant et que le téléchargement sur Dinitia. Lancez la procédure Donald à ce moment-là. Un autre logiciel qui nous intéresse est SQL Server Management Studio. Maintenant, le studio de gestion sera votre passerelle pour interagir réellement avec la base de données , interroger les données sur l'écriture de ce que nous appelons des requêtes dans une langue. SQL. Nous allons entrer dans toutes ces choses en temps voulu, mais pour non, vous pouvez suivre cette fille encore une fois. C' est dans la classe, notes sur. Nous pouvons simplement prendre ce bouton de téléchargement pour initialiser ce téléchargement, qui peut prendre un certain temps. C' est un fichier assez gros, donc dès que le chargement n'est pas terminé, nous nous réunissons à nouveau. Et puis nous avons traversé le processus d'installation. Hé, les gars, bienvenue. Sachez que nous ne perdons pas notre fini. Nous commencerons par installer notre moteur SQL Express. Donc, il suffit de cliquer sur ce fichier d'isolation, cliquez sur Exécuter. Ensuite, nous serons accueillis avec cet écran d'installation, nous pouvons cliquer. La fonctionnalité de base vous permettrait de sélectionner certaines fonctionnalités à ce stade. On n'a pas besoin de faire ça. On peut juste aller avec le basique. Nous pouvons aller de l'avant et accepter les termes et conditions que vous pouvez lire si vous le souhaitez. Si vous avez d'autres idées que vous pouvez vouloir changer son directeur, sinon vous signifie sera utilisé par défaut. Et vous pouvez voir ici que sur six gigaoctets, nous n'avons vraiment besoin que de 300 mégaoctets. Donc, je vais juste aller de l'avant et cliquez sur Installer sur cela peut prendre un certain temps, donc vous vous réunirez à nouveau une fois que cela est terminé. Ok, donc à la fin de la procédure d'installation, vous voyez que vous avez
réussi à faire cette installation, réussi à faire cette installation, et ensuite ils vous donnent des informations pour vous donner une bande dessinée et une ficelle. Donc, si vous vouliez développer une application en plus de cette base de données, alors vous voulez probablement faire attention à cette partie. Mais ce n'est pas vraiment nécessaire en ce moment. Et ils vous donnent juste les chemins pour les feux d'amour et d'autres éléments essentiels de l' application. Une autre partie essentielle de ce processus d'installation, comme mentionné précédemment, est d'installer la suite Management Server studio à la fin de cette
installation d'ajout d'experts , ils vous donneront en fait une option pour voir SMS installé. Et cela va vraiment juste faire monter votre navigateur pour naviguer orteil. Eh bien, j'ai pensé que ce discours de sorte que le lien vers cette page est déjà inclus dans les notes de classe. Andi ici. De là, vous pouvez obtenir un direct ne pas Lord orteil le studio de gestion. Donc, si vous ne l'avez pas fait auparavant, vous pouvez simplement suivre ce lien et obtenir que ce fichier l'a déjà dans Ne pas charger ici. Donc je vais juste initier cette installation. Tout cela va lancer l'installateur et ils vous donnent vraiment juste un bouton pour cliquer, qui est installé. Bien sûr, vous pouvez changer cet emplacement si vous avez d'autres idées pour le chemin. Sinon, vous pouvez le laisser comme valeur par défaut sur il suffit de cliquer sur installer. Donc, cela peut aussi prendre un certain temps donc nous nous réunirons à la fin de ce processus. Ok, donc notre installation est terminée sur Doll que nous devons faire est de redémarrer pour continuer. Donc, nous pouvons le faire rapidement. Onda nous dans la prochaine vidéo, nous allons commencer à regarder comment nous commençons à regrouper tout ensemble. Qu' est-ce qu'une base de données est sur. Pourquoi apprendre cette compétence est si important. Restez à l'écoute.
4. Configurer SQL Server pour Mac et Linux: À l'heure actuelle, Microsoft
SQL Server n'est presque exclusivement utilisable que
sur les machines Windows. Les étapes
d'installation précédentes ne se sont donc peut-être pas bien déroulées peut-être pas bien déroulées.
Si vous n'utilisez
pas de machine Windows, si vous utilisez Mac ou Linux, ne vous inquiétez pas, il existe
toujours une solution pour vous. La solution numéro un
serait que vous puissiez utiliser
une machine virtuelle, sorte que vous puissiez utiliser VMware ou autre outil prenant
en charge la virtualisation. Et vous pouvez créer
une machine virtuelle dotée d'un système d'exploitation Windows,
puis l'utiliser. Sachez que cela peut demander beaucoup de
ressources. Et je ne vais pas vous faire
subir tout cela juste
pour utiliser un seul logiciel. L'alternative à un environnement
virtualisé pour Windows
serait d'utiliser Docker, qui est ce que j'
ai sur mon écran. Plus sombre, vous pouvez facilement vous
y rendre en vous rendant sur Docker.com. Darker est une
application très rapide qui nous permet d' utiliser ce que nous appelons des conteneurs au lieu d'un environnement entièrement
virtualisé. Nous pouvons donc utiliser Docker pour simuler
l'environnement nécessaire et
uniquement l'environnement nécessaire à l'exécution d' une application particulière sans avoir besoin de l'
ensemble du système d'exploitation. Nous allons donc utiliser Docker pour
simuler un environnement
pour SQL Server. Ensuite, nous serons
en mesure de nous connecter
au serveur SQL juste pour voir, même si vous n'utilisez pas
de machine Windows. Maintenant, la première chose que vous
remarquerez, c'est qu'il est disponible pour tous les
systèmes d'exploitation, à peu près non ? Donc, si vous utilisez Windows, vous pouvez toujours utiliser Docker. Si vous possédez un appareil Apple, un appareil
basé sur Linux ou un appareil basé sur une puce
Intel, vous pouvez tout de même. Nous installons Docker. Alors allez-y, téléchargez-le
et installez-le. Je l'ai déjà installé
sur mon ordinateur Windows, mais une fois
que vous l'aurez installé, vous aurez accès aux commandes
de
ligne de commande Docker. Une fois que vous l'avez installé, appuyez sur pause, laissez-le s'installer, puis vous pouvez continuer. Je vous encourage à
lancer votre terminal. Donc, encore une fois, j'utilise
une machine Windows, mais votre terminal sous Linux ou Mac OSX ressemblerait
beaucoup à ceci. Et vous pouvez simplement exécuter la commande docker juste pour vous
assurer qu'elle est installée. Et si vous voyez quelque chose
qui ressemble à ceci, c'est qu'ils n'avaient pas accès aux commandes de
l'interface de ligne de commande Docker. Très bien, ce que nous voulons
faire à ce stade c'est exécuter une commande
appelée docker. Tirez, c'est zoomer un peu
pour faciliter la lecture. Nous allons donc faire
Docker, Pull, Docker Pull. Nous allons extraire
ce que nous appellerons l'image. Docker possède donc des fichiers
prédéfinis qui s' alignent
sur l'environnement nécessaire à une application
particulière. Et c'est ce qu'on appelle des images. L'image que nous voulons est l'image Microsoft MS
SQL Server. Nous allons donc faire un docker, appuyer sur cette image pour que vous
puissiez appuyer sur pause, assurer de la taper
exactement comme je l'ai fait. Et lorsque vous appuyez sur Entrée, il va de l'
avant et vous dira : « OK, je reçois la dernière version », puis vous verrez le téléchargement. J'ai déjà extrait cette image, donc je l'
ai déjà sur ma machine. Mais vous allez voir qu'il
tire, puis il va commencer
à afficher des indicateurs
du chargement effectué. Et en fait, cela
ressemblerait davantage à ceci. C'est donc une capture d'écran que j'ai prise plus tôt lorsque
je l'ai téléchargée. Et vous allez
voir que cela va faire apparaître ce tas de lignes
similaires à celles-ci. Et vous allez avoir
ces balises de téléchargement. Donc, une fois que cela est terminé, l'étape suivante consiste
à l'exécuter. Pour l'exécuter, vous avez
besoin de cette commande. Nous allons donc
dire Docker, exécuter, puis tiret e, et le CLUF
sera accepté. Donc, ce qui se passe, c'est que SQL
Server contient généralement l'un de ces documents
dont vous avez besoin pour accepter les
termes et conditions. Nous le mettons donc simplement
dans un paramètre indiquant que oui, nous acceptons les termes
et conditions. Et puis un autre
qui dit mot de passe SA. Donc, si vous avez examiné le processus d'installation
lorsque nous utilisons Windows,
nous pouvons utiliser l' authentification Windows connecter
à la
base de données, n'est-ce pas ? Il suffit donc d'
un nom de machine. Nous pouvons utiliser un utilisateur Windows, l'utilisateur Windows actuel, l' authentification
Windows
et simplement nous connecter. Maintenant que c'est plus sombre
et que c'est un conteneur, il n'y a ni fenêtres, ni portes ni
Mark, ni authentification
Linux. Ce n'est donc pas vraiment que
vous pouvez simplement vous connecter en utilisant l'utilisateur par défaut
de votre ordinateur. Cette étape est donc
applicable que
vous utilisiez Windows,
Mac, Linux, etc. Nous devons
donc
spécifier un mot de passe SA. AC est donc l'utilisateur par défaut, c'
est-à-dire administrateur système
ou administrateur système. Chaque fois que vous installez
un moteur de base pour Microsoft SQL Server, vous obtenez cet utilisateur d'essai. Nous allons configurer
ce SA, mot de passe. Et vous pouvez saisir le
mot de passe de votre choix. Je mets juste un mot de passe
fort ici. Et c'est vraiment possible
que vous puissiez le voir dans d'autres démos que vous pourriez regarder n'importe où sur Internet. Ce mot de passe n'est donc pas nécessairement propre à
moi ou à cet exercice. Vous pouvez saisir n'importe quelle valeur
de mot de passe avec
laquelle vous vous sentez à l'aise. Et vous vous souvenez, je
divise simplement le mot de
passe fort, bien sûr, avec des
caractères, des chiffres et
quelques lettres majuscules. Ensuite, nous spécifions le port. Le port situé au
front est important nous voulons
le traverser. Le port. À l'autre bout du deux-points se trouve le port vers lequel il sera mappé. Cela signifie que SQL Server diffuse
par défaut
à partir du port 1433, qui est le port par défaut. Donc, sans rien faire, en spécifiant des
ports ou quoi que ce soit, vous passerez toujours par
1433 une seule fois ou en vous connectant. Cependant, Docker fonctionne dans son propre
environnement spécialisé, nous devons
donc le cartographier. Il s'agit du port par défaut, puis de
la machine à ports qui devra
passer par un tunnel pour accéder à ce sport. Vous pouvez donc simplement
laisser cela sous la forme 14331433. Si vous ne souhaitez pas que
SQL Server soit
déjà installé et que vous
utilisez Mac et Linux, alors 141433 convient. Vous n'avez rien à faire plus. Vous pouvez simplement vous connecter. Cependant, parce que j'utilise une machine Windows et que j'ajoute
pour modifier mon port, car 1433 est déjà occupé par mon
installation native de SQL Server. Donc, je
vous montre simplement que vous pouvez faire 141433 par défaut, ou que vous pouvez mettre votre propre port spécifique
si vous le souhaitez. Ensuite, la dernière
chose à faire est de dire le trait d'union D, puis de spécifier l'
image que nous voulons exécuter. Donc, en gros, nous disons que
Docker exécute cette image et s'assure que tous ces paramètres
intermédiaires sont configurés. C'est essentiellement
ce que nous venons de faire. Ainsi, lorsque vous appuyez sur Entrée et
que vous êtes seul à exécuter celui-ci, il lancera cette image à l'intérieur
de l'interface utilisateur plus sombre. Dans l'interface utilisateur plus sombre, vous allez voir
quelque chose qui ressemble à ceci. Il va apparaître
sous des conteneurs. Et vous pouvez voir ici comment plusieurs conteneurs, non ? J'ai même un autre conteneur
SQL qui ajoute du sel depuis le début. Et voici la nouvelle que
je viens d'exécuter cette commande. Il a donc créé un
tout nouveau conteneur pour Microsoft SQL Server. Et il fonctionne actuellement, et il fonctionne
depuis 30 secondes. Et le port qu'il utilise est 1400,
ce qui, si vous ne le modifiiez pas et
que vous utilisiez le port
1433 par défaut , serait 1433. Vous pouvez toujours arrêter et
démarrer les conteneurs. Vous pouvez également supprimer et regarder ce qui se passe. Vous pouvez donc l'ouvrir dans terminal et
interagir avec lui ici. Vous pouvez également l'inspecter
pour voir son état
de santé et examiner certaines
de ses configurations. Voici donc certaines des variables d' environnement
que nous avons configurées. Quels sont les paramètres
que nous transmettons ? Ensuite, vous pouvez également
consulter les journaux. Voyez ici qu'il semble
avoir démarré avec succès. Donc, après avoir confirmé
toutes ces choses maintenant, j'aimerais me connecter. Désormais, pour Windows, nous pouvons utiliser Microsoft SQL Server
Management Studio. Cependant, Management
Studio n'est pas nécessairement disponible
sur Linux et Mac. L'alternative
serait donc d'obtenir Azure Data Studio. Vous pouvez simplement effectuer
une recherche
sur Google et suivre la documentation Microsoft
jusqu'à Azure Data Studio. Data Studio est un outil de base de données
multiplateforme destiné aux professionnels. Et il peut fonctionner sous
Windows, MacOS, Linux. Vous pouvez donc installer
la version appropriée pour vous-même. Et bien sûr, vous pouvez consulter
tous les avertissements juste pour vous
assurer que vous êtes dans
un état compatible. D'accord ? Le fait est que le studio de données peut faire plupart des choses que le studio de
gestion peut faire, en particulier dans le cadre
de ce cours où nous en
apprenons davantage sur le
développement de bases de données et les requêtes et tel. L'expérience
sera légèrement différente. Certaines choses ne se trouveront donc pas
au même endroit et pourraient ne pas
s'appeler de la même manière. C'est parti pour vous connecter. Laissez-moi simplement vous montrer
comment nous nous connectons à. Vous pouvez donc voir que je me suis
connecté pas mal au fil du temps ou qu'il a besoin d'
une base,
mais ici, je vais connecter Microsoft SQL Server et ensuite le serveur ici sera une virgule hôte locale, le port que vous avez spécifié. Dans mon cas, j'ai indiqué
1400 sur mon porche. Vous pouvez
également avoir spécifié 1400 ou tout ce
que vous avez spécifié. Lorsque nous l'avons réglé, le conteneur devrait fonctionner et si
vous ne vous en souvenez pas, vous pouvez simplement
revenir en arrière et regarder. Vous spécifiez ce port. Et puis pas
l'authentification Windows mais la connexion SQL. Et notre nom d'utilisateur est SE, et notre mot de passe est le
mot de passe que nous avons saisi. Encore une fois, si vous ne vous
souvenez pas du mot de passe, vous pouvez toujours accéder
au conteneur,
puis cliquer sur Inspecter. Et je peux simplement copier cette
valeur, puis la coller. Et puis pour l'avenir, tu te souviendras du mot de passe. Ensuite, nous pouvons nous connecter. Alors c'est le signe d'une connexion
réussie. Moi, vous voyez ici cette version du système d'exploitation, donc je suis toujours sur ma machine
Windows. Mais la version du système d'exploitation qu'il
a détectée est Ubuntu. C'est donc ce que fait le
conteneur. Il s'exécute dans un environnement
Linux, mais il simule
l'environnement, l'environnement
exact nécessaire au fonctionnement de
SQL Server. Si je développe les bases de données,
vous verrez qu'elles sont vides. Et puis, en gros,
tout ce que nous pouvons faire depuis le
studio de gestion, nous pouvons le faire à partir d'ici. Une chose que vous remarquerez
peut-être, c'est que certains
outils sont limités. Ainsi, dans le
studio de gestion, je peux facilement, ou plus facilement,
cliquer avec le bouton droit de la souris et dire certaines
choses, comme créer
une nouvelle base de données, etc. Dans la gestion
du Data Studio, cependant, il
faudra probablement le scripter. C'est quelque chose
que vous devez contrôler et créer
un nouveau fichier script. Ensuite, pour créer
une nouvelle base de données, vous devez dire
créer une base de données. Et puis énoncez le nom, disons test db, puis F5, et puis
il est lancé. Vous pouvez donc
actualiser la liste des
bases de données et
vous verrez TSDB, non ? Mais dans ce cours, nous allons
voir comment exécuter les deux scripts et utiliser l'interface utilisateur graphique
de Management Studio. Vous devriez donc être en mesure de
suivre très bien. Et en tout cas, si vous rencontrez des difficultés, n'hésitez pas à nous contacter.
5. Connectez-vous à Instance des la base de la base de données et créer une base de données: ce n'est pas que vous avez terminé l'installation. Il est temps de lancer le studio de gestion et de se connecter à notre moteur afin que nous puissions simplement aller au menu de démarrage. Onda. Nous pouvons simplement chercher les outils Microsoft SQL Server, et il peut avoir un nombre le nombre me très basé sur la version. Si l'Europe avec 2017 et les dernières estimations, alors vous ne devriez pas avoir un problème. Uh, les versions
précédentes hors système, c'était toujours le travail. Donc, je dis juste que dans le cas où vous auriez eu une installation précédente, alors vous pouvez voir un nombre différent ou il peut ne pas être dans cet ancien. Quoi qu'il en soit, si tu as une expérience anormale, laisse-moi une ligne. Laissez-moi un message. Je serai sûr de vous suivre, et on pourra y travailler ensemble. Sinon, vous pouvez simplement développer ceci et vous pouvez rechercher les hors cours de Microsoft SQL Server Management . Si vous avez des fenêtres, alors vous pouvez toujours utiliser cette recherche, alors nous allons juste aller de l'avant et cliquer dessus. Nous pouvons faire tourner notre barre
de tâches jusqu'au début, sorte qu'elle soit accessible plus facilement afin que nous puissions tout simplement aller de l'avant et lancer cela. Ok, donc au lancement, vous recevrez cette minuscule boîte de dialogue et elle restera au nom du serveur. Maintenant, lors du lancement sera donné cette boîte de dialogue qui vous demande de vous connecter au serveur. Il doit être pré-rempli avec le nom du serveur, qui serait une combinaison de votre nom de machine sur votre nom d'instance. Donc, à la fin de l'installation, vous auriez vu où ils l'ont indiqué. Sur l'instance Sur le nom par défaut est SQL Express. L' authentification Andan par défaut sera fatiguée à vos comptes d'authentification Windows sur DSO Si tout cela est là et il semble OK, vous pouvez simplement aller de l'avant et cliquer. Connectez-vous pour savoir que vous êtes connecté avec succès. Vous verrez plus de deux ans objet Explorer à votre gauche que vous êtes connecté et vous pouvez développer et regarder des bases de données et vous voyez un tas d'options ici. L' auteur, notre tout premier souci. Ce que nous devons faire est de cliquer sur le bouton. Vous interrogez le requin clavier. Quelle fin de contrôle ouvrira également une nouvelle fenêtre d'inquiétude et alors nous pouvons voir que tout ce qui nous est
donné est un fichier texte vide. Et là certaines choses ici que vous voudrez peut-être faire attention. Notre objet Explorer est toujours là. Au large de Corse. Réglez-le sur auto. Cachez-vous si vous voulez plus. Vraiment État. J' aime le laisser, Doc. Deuxième question que Pouchkine, le père que le réglage sur nous voyons ici que lorsque nous cliquons dans la zone de texte vide, nous voyons une vie offrant ici. Cette liste déroulante ou ce mot monstre déclenche vraiment une liste déroulante qui nous montre toutes
les bases de données qui sont actuellement dans le système. Ce sont toutes des bases de données par défaut, et je vous conseille de ne pas les supprimer. Donc, même si vous allez explorer et que vous allez dans les bases de données système et que vous les voyez répertoriées là, je vous conseille de ne pas les manipuler, moins pas juste. Non, il peut arriver un moment où vous devenez un gourou SQL, mais pour l'instant, vous pouvez simplement les laisser seuls. Donc, comme je l'ai dit, nous voulons écrire ou première requête pour créer une base de données, et nous allons appeler cette école de base de données. Donc la première chose que nous voulons, c'est que le mot crée. Donc, nous écrivons, créer Andi juste le point sur. SQL n'est pas sensible à la casse, donc j'écrirai la syntaxe SQL dans toutes les majuscules afin que vous puissiez voir sur quoi il est syntaxe, ce qui ne l'est pas. Qu' en fin de compte ou éditeur mettra en évidence aussi bleu que nous allons le long sur quoi ? Tout ce qui n'est pas une syntaxe. Il laissera généralement en noir. Donc nous voulons créer une base de données et nous allons l'appeler école. Je quitterai l'école en bas. Certaines personnes se terminent par un point-virgule, mais ce n'est pas absolument nécessaire. Donc nous avons notre requête ici, et ensuite ce que nous allons faire est appuyer sur exécuter. Ou on peut juste utiliser notre clavier taillé de requin f 5. Ils font la même chose, et une fois que nous le ferons,
nous verrons qu' il est dit Commandes exécutées avec succès. D' accord, donc j'ai zoomé,
disons que les commandes préceptes ont été terminées avec succès. Maintenant, comment puis-je valider ? C' est une nouvelle base de données a été créée. Nous avons une liste déroulante ici étiquetée bases de données. Nous l'avons déjà laissé tomber, et même si nous nous effondrons et élargissons, nous ne voyons toujours pas la base de données. Donc ce qu'on va faire, c'est se rafraîchir. Ensuite, nous voyons qu'il apparaît donc finalement autant de bases de données que vous allez créer seront listées directement sous la partie bases de données de cet arborescence de l'explorateur de fichiers. Donc, une fois de plus, vous voyez d'autres bases de données sur leurs bases de données système. Vous pouvez les laisser seuls sur autant de bases de données que vous allez créer. Vous les voyez listés ici, donc je vais aller de l'avant et créer l'école. C' est le test juste le point culminant et Dimon Street. Et puis vous pouvez voir qu'il y a une ligne rouge ici montrant que vous ne pouvez pas utiliser tiret dans le nom d'une base de données. Il y a donc des règles strictes. Les gens ont tendance à cas de chameau ou utiliser des traits de soulignement à il ya des restrictions. Et cet éditeur est rapide pour souligner ce que vous pouvez et ne pouvez pas faire avant même qu'il vous permette d'exécuter. Alors, on va y aller et créer l'école. Soulignement, test Andi. On verra. Commande a rivalisé avec succès, et encore une fois nous avons juste fui des bases de données. Rafraîchir et puis nous verrons que nous avons notre deuxième base de données répertoriée là
6. Déposer ou supprimer la base de données: D' accord. Donc, ramasser là où nous nous sommes arrêté, nous devons bases de données créées avec succès. Mais vraiment et vraiment au moins maintenant, je n'en ai besoin qu'un. Donc, je veux supprimer une de ces bases de données. Il y a donc une commande en SQL. Donc j'enlève juste ce neuf ou j'ai juste commenté pour que vous puissiez juste utiliser un double tiret, non ? Et puis ce que cela fait est rendu cette ligne inutile. Donc, si vous êtes habitué à d'autres langues, comme peut-être voir javascript pointu, vous savez que vous avez cette barre oblique double ou vous avez cette barre oblique et chaque langue a sa propre façon. Donc, en SQL, nous utilisons simplement un double tiret. Très bien, je veux voir ce lion devenir vert. Si vous utilisez les valeurs par défaut, couleur et le schéma, alors vous savez que cette ligne n'aura aucune incidence sur quoi que ce soit. Une fois que vous cliquez sur exécuter afin que nous puissions aller à la ligne suivante Onda, nous allons vouloir supprimer ou dans ce cas, tomber dans la nomenclature SQL drop ou base de données ? Non, je veux vous prévenir Soyez très,
très prudent sur délibérément quand vous allez
exécuter ceci, exécutez cette commande parce que supprimer une base de données et irréversible il n'y a pas de corbeille. n'y a pas de méthode de récupération ou il y a quelques bateaux à ce stade. On n'est pas prêts pour ça. Soyez donc très, très prudent et très, très délibéré par écrit sur l'exécution ultérieure de cette commande. Donc, nous allons voir une base de données de dépôt sur. Alors, comme nous allons, vous commencez à voir qu'il y a un modèle, et je remarque que je ne l'écris pas dans nos casquettes. Encore une fois, il n'est pas sensible à la casse, alors laissez la base de données sur. Ensuite, nous devons spécifier le nom de la base de données, donc nous voulons abandonner l'école au test de score. Donc je viens juste de l'école à leur test de score et on voit ici que l'éditeur est en fait en quelque sorte en
train de prendre ce que tu veux dire faire. Donc c'est gentil de terminer ce que c'est qu'il pense que vous voulez faire. Être stupéfait, que l'information qu'il a disponible Teoh, que l'information qu'il a disponible Teoh,
donc il est assez facile d'écrire des déclarations complexes en très peu de temps. Donc, nous voulons abandonner la base de données appelée école sur le test de score, et puis je vais l'exécuter encore une fois, être très délibéré et prudent lorsque vous faites cela Parce que cette compétence ne vous demandera pas si vous êtes sûr que vous voulez supprimer cette article. D' accord ? SQL va juste voir le désolé s Votre studio de gestion va juste voir que c'est la commande que j'ai eue. Je vais l'exécuter. Donc quand je clique sur Exécuter, ils sont il y a. Mais nous voyons toujours la base de données répertoriée ici. Comme d'habitude, il suffit de cliquer ici et de rafraîchir. Ensuite, nous voyons qu'il n'y a plus de trace hors de l'école sur le test de score sur Si je tente exécuter cela
à nouveau, alors je vais obtenir une flèche disant que je ne peux pas le laisser tomber parce qu'il n'existe pas ou que vous
n'avez pas la permission. Nous savons que nous avons la permission. On sait qu'on vient de le faire. Donc, nous savons que c'est parce qu'il n'existe pas de la même manière sur un moyen rapide de commentaires dans SQL Management Studio est la clé de contrôle personnelle. Et voir, en fait,
dans les notes de classe, j'ai un tas d'avoine de requin clavier qui peut vous aider à vous entendre rapidement. Andi, allez dans l'éditeur avec un minimum d'effort. D' accord. J' adore les raccourcis clavier. donc nous pouvons dire créer une base de données sur. Je vais essayer de créer l'école. Eh bien, nous savons où ils ont l'école, donc je veux juste vous montrer le type hors de l'ère que vous verrez alors il dit que
l'école de base de données existe déjà. Veuillez choisir un nom différent, donc nous ne pouvons pas avoir deux bases de données avec le même nom. Si vous avez besoin d'un orteil identique, vous savez que vous pouvez utiliser votre trait de soulignement ou vous pouvez ajouter un nombre. Les chiffres sont acceptables. Bien sûr, le Carter est assis là. Des règles strictes lui appartiennent, mais nous avons infiniment beaucoup de Carter à notre disposition, donc nous pouvons toujours faire envoyer beaucoup et être unique. D' accord, donc c'était comme ça qu'on procédait à la suppression d'une base de données. Ensuite, nous examinons comment nous procédons à la création de ce que nous appelons des tables dans notre base de données.
7. Qu'est une table de base de données ?: Non. Discutons brièvement de ce que notre table est maintenant. Une base de données se compose d'une ou de plusieurs tables. Un tableau comprend des lignes et des colonnes. Essentiellement, les gens ont regardé une feuille de calcul Excel. Vous verrez que vous avez rose représenté par des chiffres, et vous avez des problèmes représentés par des lettres. Donc, dans la cellule, vous auriez une certaine quantité de données, et généralement vous créez une forme de structure tabulaire. Disons, par exemple,
pour, pour, euh, moins hors étudiants, et que vous avez une feuille de calcul Excel aurait une feuille pour les étudiants sur. Ensuite, vous auriez des colonnes
prénom, nom, date hors naissance, etcetera sur. Ensuite, dans chaque cellule située sous les colonnes respectives, vous auriez les données de bit off appropriées pour prendre en charge cette valeur. Ensemble, cet enregistrement ou cette règle créerait une description sur des objets ou un étudiant. Donc, de la même manière que nous pouvons visualiser les données dans une feuille de calcul Excel, c'est de la même manière qu'il est représenté dans une table SQL. Nous avons donc des lignes et nous avons des colonnes sur les règles, créer des enregistrements et leur rencontre hors points de données sur chaque colonne dans les magasins de table. Le point de données, qui peut être sous la forme de texte ou de nombre ou une date de nombreux types de données qui sont pris en charge sur tous ces combinés pour nous indiquer les détails sur l'objet. Donc, c'est essentiellement à quoi ressemble la table dans une base de données sur. Ensuite, dans la même veine, chaque ligne ou enregistrement doit être identifiable de manière unique en utilisant ce que nous appelons une clé primaire. Donc, dans la prochaine vidéo, nous allons créer une table. Je me souviens de bases de données appelées School, et nous allons créer ou première table pour stocker tous nos élèves collent autour.
8. Créer un tableau de base de données SQL: Hé, les gars, Bienvenue dans cette vidéo, on va chercher à créer une table. Maintenant, une fois de plus, une table est à l'intérieur d'une base de données. Une base de données peut comporter plus d'une équipe. Donc, la première chose à noter est que notre moteur de base de données, qui est SQL Express, peut avoir plus d'une base de données à l'époque. Deuxièmement, chaque base de données peut avoir plus d'une table. La première chose que nous devons faire avant de commencer à créer quoi que ce soit une fois que nous arrivons à l'
étape de la table est de spécifier quelle base de données où un bateau à utiliser pour effectuer ou des opérations. Maintenant, nous avons montré que nous pouvions avoir plus d'une base de données quand nous avons créé l'école et nous avons eu test de soulignement
scolaire. Supposons donc que nous avions plus d'une base de données ici à l'époque. Nous devons spécifier lequel il est sur le point d'utiliser. Vous vous souvenez que nous avons ces bases de données ainsi qu'une école. Nous devons donc préciser que nous sommes sur le point d'utiliser l'école. Donc, nous disons utiliser et ensuite nous utilisons notre nom de base de données là-bas. Notre intelligence complète cela pour nous, et j'ai juste mis le point-virgule là en ce moment. La tâche suivante consiste à créer une table, donc en utilisant des sommets de péché très similaires, je vais traquer mon instruction create, mais à la place hors base de données. La dernière fois, on a dit avoir créé Toby au lieu de la base de données. Cette fois, je veux une table, donc je vais dire, Créer une table sur, puis je vais spécifier et nommer cette table. Dans ce cas, nous voulons des étudiants. Donc essentiellement des étudiants. C' est explorer des alliés parce que la table va stocker des dossiers pour les étudiants. Donc, vous voudrez prouver à des alliés purs les noms de vos tables ont juste pensé au principe parce que chaque enregistrement, vous savez, il le rend pluriel. Donc nous disons, créer des étudiants de table, puis nous ouvrons et fermons les parenthèses et, bien sûr, vous obtenez cette petite ligne rouge parce que vous ne pouvez pas avoir de crochets vides. Nous allons donc remplir les colonnes que nous voulons créer. Maintenant, vous n'avez pas besoin de percer et je brise la ligne parce que j'aime voir où mon code commence et s'arrête et le faire tabuler. Mais tout pourrait en fait ne pas être en une seule ligne. SQL ne va vraiment pas à travers une flèche avec ses deux sens, donc la première chose que nous voulons spécifier est un identifiant unique ou ce que nous appelons une
clé primaire . Maintenant, le nom le plus simple que nous pouvons donner à cet air unique est idee quelqu'un à dire idée , qui est notre nom de colonne sur puis après ou nom de colonne. Nous devons spécifier au type bêta. Maintenant, si vous avez fait d'autres langages de programmation que beaucoup de cela peut sembler familier beaucoup hors eux. Moi, très. Mais sinon passons à travers cela lentement apprécier les différents types de données qui sont disponibles pour nous pour cet exemple simple. Donc, notre type de données I D va être un type de nombre, qui en SQL est appelé en bref pour entier. Très bien, alors je voulais être ce que nous appelons la clé primaire, donc je dois spécifier que cette colonne est notre clé primaire. Donc, cela s'appelle un attribut. Donc, récapitons simplement que nous avons le nom de la colonne suivi de son type de théâtre sur. Alors n'importe quoi d'autre serait un attribut. Donc, dans cette situation ou le premier attribut est la clé primaire, d'autres attributs peuvent inclure pas savoir qui spécifie que cette colonne ne doit jamais être vide qui n'étaient pas des moyens vides. On voit donc que ça ne devrait jamais être vide. Aucun enregistrement étudiant ne devrait jamais entrer dans la base de données sans cette valeur. D' accord, alors. Nous avons encore une chose dans Microsoft SQL que nous avions fait que je baisse les cônes d'orteil automatiquement parce que quand vous avez les 5 premiers étudiants, c'est assez facile de dire, OK, étudiant un sur, puis suivez leur soi Aujourd'hui, c'est aussi un étudiant. Mais là, quand vous atteignez un million d'enregistrements, il est difficile de garder une trace. Il est difficile de savoir quel numéro était précédent. Andi va devenir fastidieux essayant de garder jusqu'à ce que Microsoft SQL ainsi que d'autres
moteurs de base de données . Ils nous donnent la possibilité de CoNed automatiquement. Donc, chaque fois que j'enregistre entre, cette colonne s'incrémente d'un. Il suffit de monter par un ou vous pouvez spécifier le corps que vous voulez. Andi. Ça prendra soin de ça. Donc, si cela compte toujours, alors cet enregistrement sera toujours identifiable de manière unique par son i D. Donc, dans Microsoft SQL, cette syntaxe est l'identité. Désolé, je n'ai pas sur nous pouvons spécifier que nous voulons commencer par un et nous voulons
incrémenter d'un à chaque fois. Donc, une fois de plus, cela spécifie qu'il devrait automatiquement incrémenter chaque fois qu'un enregistrement est activé. Nous voulons commencer à compter à un, ce qui signifie que le premier enregistrement devrait commencer un. Donc si vous vouliez que ça commence à 10 ans, alors on pourrait voir 10. Mais nous allons juste laisser que celui sur le deuxième appartement dans cette fonction dit que nous devrions augmenter d'un. Donc, si on voulait commencer à Andi, montez 2468 avec ces records et commencerait à compter votre orteil et dire que nous voulons commencer chaque carte devrait être incriminant par deux. D' accord, donc en le laissant à 11 heures,
parfois on voit juste le mot identité. D' accord, donc je vous donne juste la pleine compréhension pour que si vous voyez la syntaxe certaine, façon
ou d'une autre, vous puissiez apprécier ce qu'il y a, donc je vais juste laisser ça juste là. Donc, une fois de plus, colonne nouveau type de théâtre et puis tout le reste serait un attribut sur. Ces attributs sont par feu et grand optionnel. C' est à vous de décider si vous voulez spécifier des attributs et des contraintes sur vos colonnes. Donc notre deuxième colonne serait le nom des étudiants. Nom de famille alors. Évidemment, nous ne stockons pas les noms en tant que nombres, donc nous avons besoin d'un autre type de données pour stocker le nom de famille. Donc, les fournisseurs de quelques types de données qui prennent du texte que je vais utiliser celui-ci appelé env sont char tout droit. Vous avez en vernis notre et vous avez aussi arche sont vous avez aussi de l'omble et vous avez un certain
nombre d' entre eux. J' ai également inclus dans les notes de classe ce script ainsi que des détails sur les
types de données les plus populaires et celui que vous utiliseriez quand vous pouvez toujours vérifier cela sur votre propre temps. Donc je vais dire Environ char et ensuite je dois spécifier des caractères Khomeni. Cette colonne ou point de données d'environ Shahriar devrait-elle être en mesure d'accepter ? C' est donc aussi une autre contrainte. Je veux le contraindre à peut-être 50 caractères,
ce qui signifie qu' aucun enregistrement étudiant ne devrait jamais entrer dans ma base de données avec plus de 50 caractères sont à, donc le nom de famille de personne ne devrait l'être. Je peux penser à un nom qui obscurcit la violette ceci, mais au moins où le restreindre. Donc, si vous savez que vous construisez un système pour un pays que des dizaines sont des noms très exotiques, moins selon nos normes anglophones. Alors vous voudrez peut-être jouer les nôtres avec les limites de Carter, donc je vais laisser ça à 50 heures. Vous avez peut-être remarqué ? Si non, alors c'est bien, que j'utilise une virgule après chaque ligne. Donc, après avoir spécifié une virgule utilisateur de colonne et ensuite vous passez à la colonne suivante, si vous laissez le plus calme là, alors cela donnera une ère. Donc, si c'était le dernier, il n'y a pas de virgule. Mais alors nous avons plus à mettre, alors utilisez une virgule. Ensuite, nous avons besoin de prénom sur environ Shar. Nous avons aussi envoyé ça à 50 sur Disons juste que je veux mettre sur une rue de front. Je veux qu'aucun dossier étudiant ne puisse jamais manquer le prénom et le nom de famille. Donc, je veux m'assurer que cette colonne ne soit jamais connue. Ok, je sais juste que les contraintes de notre problème de nom de famille. Donc le nom de famille ne devrait pas être Non sur le prénom ne devrait pas être non. Un autre autre. Un autre point important de données sur n'importe quel élève fréquentant mon école est la date naissance. Encore une fois, SQL n'est pas sensible à la casse. Um, mais ensuite pour la lisibilité humaine, vous pouvez comprendre que peut-être utiliser un boîtier de chameau aiderait à la lisibilité parce que alors que le nom de famille et le prénom sont la date de naissance de la lecture en majuscules inférieures pourrait ne pas être si facile à ramasser, sorte que nous pouvons toujours chameau cas il. Mais je dirai juste être cohérent. Si vous allez à l'affaire Camel, alors vous devriez venir. Camel case sur les colonnes. Si vous allez être des majuscules inférieures, vous restez les majuscules inférieures. Si vous allez utiliser des traits de soulignement, utilisez des traits de soulignement, mais soyez cohérents. D' accord, donc je vais juste être cohérent avec ma minuscule casse. Mais vous avez peut-être des idées différentes de moi, et c'est bon. Où tous les individus que nous apprenons tous ici afin que vous puissiez utiliser votre propre style et vous pouvez le
casser d'utiliser vos soulignements notre boîtier chameau, si vous le souhaitez. D' accord. Donc la date de naissance à la date de naissance serait bien, évidemment nous stockons la date ici, mais alors nous ne voudrions pas que les états parce que peut-être vouloir le faire. Donc, faites quelques manipulations de date plus tard. Donc, SQL nous donne réellement un type de données qui est adapté pour stocker des bits. Nous en fait dans les moteurs modernes s you'il, comme 2017 ont un type de données de date de. Ensuite, pour les anciennes versions, nous avons beaucoup de temps. C' est cela qui fonctionne dans pratiquement toutes les versions. Je colle juste l'heure de la date, juste au cas où je construirais cette chose en 2017 mais jusqu'à déployé dans une version précédente. J' ai donc utilisé les attaques les plus universellement acceptables. Mais bien sûr, vous vous sentez libre de jouer le nôtre avec tous. Donc, nous avons mordu naissance sur il prend le temps sur ce devrait également pas être non. D' accord. Et puis je suis qui sont une colonne de plus sur celui-ci serait la date des inscriptions. D' accord, donc vous pouvez voir ici que nous avons une minuscule car les noms de colonnes sont plus donc vous pouvez voir ici que nous avons une minuscule car les noms de colonnes sont plus
grands et plus descriptifs. C' est plus difficile de suivre les montres. Quoi ? Donc, une fois de plus, vous pouvez toujours apporter ces vieux en utilisant le trait de soulignement pour augmenter la lisibilité ou chameau. Embrassez-les en majusculant la première lettre de chaque mot. D' accord, donc la date d'inscription à la même date que la date de naissance obtiendra l'heure. Andi, je ne mettrai aucune contrainte pour préciser que celui-ci ne le serait pas. Non, parce que les étudiants sont peut-être inscrits, mais ils ne sont pas inscrits. Ils sont venus remplir un formulaire, mais ils ne sont pas vraiment pris de cours, donc nous ne les considérons pas inscrits. Cela signifie donc qu'un étudiant peut être entré dans notre base de données. Ce sera le cas. Il le sera. Il ou elle sera donné sur idee automatiquement. Ils ne peuvent pas être saisis sans un nom de famille sans prénom ou sans la date de naissance. Mais alors l'inscription a fait. C' est le seul à être vide. Bon, donc comme un résumé rapide, nous spécifions quelle base de données était sur le point d'utiliser si littéralement nous étions à l'usage, puis la base de données, son nom sur. Ensuite, nous allons créer une table, nous lui donnons un nom. Ensuite, nous commençons à spécifier chaque colonne en écrivant le nom que nous aimerions le
type de théâtre . Il devrait être sur certains attributs. Sont const Reince qui devrait entourer les données allant dans cette colonne. Donc on va exécuter ça et on verra ce qui se passe. Très bien, donc ça a été terminé avec succès, donc on peut vraiment élargir notre base de données ici, qui est l'école Onda. Nous verrons que nous pouvons voir des tables, des
vues et un tas d'autres choses. Nous sommes vraiment intéressés par les tables en ce moment, donc nous développons les tables sur lo and view. Voilà notre table appelée étudiants. Nous allons créer une table de cours dans cette base de données. Bien sûr, on a une école. Nous avons des étudiants où, bien
sûr, et je veux dire, nous avons un professeur. Alors, c'est les cours. Andi, comme nos tables. Désolé. Nos bases de données, comme sur les bases de données. Nous ne pouvons pas avoir à désactiver les mêmes tables avec le même nom. Donc, si j'essayais d'exécuter à nouveau ce script, il donnerait une erreur. D' accord, mais je vais le laisser à l'écran parce qu'il y a quelque chose que je veux mettre en évidence pour vous les gars. Et nous allons écrire une autre déclaration de création pour notre table de chevaux. Donc, vous voyez créer des cours de table Andi ouvert pour aspirant aides et pilules. J' aime juste ouvrir et fermer en même temps pour ne pas oublier après. Non, nous avons notre première colonne ? Non. L' ordre dans lequel vous créez les colonnes n'a vraiment pas d'importance lorsque la table sort, votre siège dans la conception dans l'ordre dans lequel les colonnes apparaissent. Mais ce n'est pas une question de voir que tout ce que vous avez pour créer l'i D avant de faire
autre chose . Je pense juste que c'est une bonne pratique pour que vous ne finissiez pas par créer la table sans elle. Parce que quand vous avez ah, table
mal construite pour commencer par que les étapes plus riches et
actives à corriger, cela pourrait, vous savez, être difficile. Donc, vous voulez vous assurer que vous avez la bonne chose dès le début. Donc, d'abord, vous dites que je d sur, vous verrez d'autres personnes ne peuvent pas spécifier si elles sont dans le cours est toujours. Ensuite, il y a un cours que j'ai suivi , qui, vous savez, est très spécifique. Certaines personnes sont génériques et juste tomber tout i d Somare NC plus spécifique quel que soit le nom de la table est sur juste en haut dans le mot I d. Donc je vais le faire des deux façons juste pour vous montrer qu'il ya beaucoup de façons de le faire. À la fin de la journée, vous choisissez votre ancien modèle sur, développer votre propre sens hors individualité. Bon, alors cours sur le type de données. Comme nous avons discuté de cet int, je voulais être une identité et nous verrons 11 clé primaire et ne savons pas sur vous Comme nous allons le long , nous verrons que tous ces attributs ne sont pas absolument nécessaires parce que le fait que cette contrainte est héros que ces attributs sont ici signifie que celui-ci est implicite. S' il s'agit d'une clé primaire, cela signifie
que la valeur doit être fournie. Donc, nous n'avons vraiment pas besoin de spécifier et de ne pas savoir. Mais je vous montre toutes ces choses jusqu'à ce que vous soyez à l'aise. Nous avons donc notre cours I d qui est notre clé primaire. Nous disons virgule, continuez et nous voyons un titre. Vous remarquez que je suis en train de prendre l'approche de l'enveloppe de chameau pour ces colonnes. Donc je vous montre juste à quoi ça ressemble et encore une fois, vous développez votre beurre entier. Nous utilisons le type de pointe teeter de notre char sur, en spécifiant qu'il devrait être 50 titre de cours Central devrait ou sera capable de dépasser 50
caractères à cette époque. Le dernier est le nombre de crédits sur ce serait un entier parce qu'à l'école, nous avons trois cours de
crédit, cinq jolis cours, etc. Donc, nous voulons spécifier que pour n'importe quel cours, il obtient cet identificateur unique rare. On a un titre. Nous avons le nombre de crédits. Andi à l'université, on a d'habitude des cours marqués, donc on va aller de l'avant. Et à ce fil de course allumé, alors ce serait peut-être un peu sur le parcours. Les cordes ne sont généralement pas longues, peut-être cinq. Carter est pour qu'on puisse voir une invitation. Notre off 5. Carter est sur Si c'est un cas où vous avez une valeur alphanumérique, ce qui signifie que vous avez des chiffres sur les lettres. Donc, dans ce cas, bien
sûr, le sport pourrait être quelque chose comme, pour l'amour de l'argument. Voir, comme pour Computer Science Tau 01 donc jamais cours de deuxième année en informatique, et c'est un mauvais score, donc ce serait une valeur alphanumérique. Si vous avez une valeur alphanumérique besoin de stocker, vous pouvez simplement la stocker comme un caractère d'environ ou comme une valeur de texte régulière. Bon, donc un cours appelé comme ça s'intégrerait parfaitement dans ce scénario, je vais juste laisser ça là et venir dans Total et donner ça comme exemple. D' accord, donc vous voyez, utiliser notre double tiret comme nous l'avons vu dans notre vidéo précédente affaiblir ce commentaire sur une ligne dessus serait ignoré. Lorsque cette inquiétude est erronée, alors nous devons ajouter quelques attributs et aucun cours ne devrait jamais être ajouté sans titre. Peut-être pourrions-nous l'ajouter jusqu'à ce que nous trouvions le nombre de crédits qu'il aura. Andi, il ne devrait pas aller sans une école de cours si minimalement, il devrait avoir un titre et, bien
sûr, tiré. Mais c'est une charge d'être là sans aucun nombre de crédits, accord. Et encore une fois, c'est tout, par
exemple, des fins. Donc, je sais que nous avons tout spécifié pour nos cours stables. On pourrait aller de l'avant et frapper l'exécution. Mais ce qui se passera , c'est qu'il le fera. Nous sommes sur ce terrain avec succès puis a échoué à exécuter sur ce terrain et puis arrêter la requête. Parfois, il arrêtera la carrière. Parfois, il veut. Mais dans cette situation, nous ne voulons pas risquer d'avoir cette erreur. Donc, ce que nous allons faire est de sélectionner la partie que nous aimerions exécuter. Bon, donc nous avons un fichier 1/4. Je peux juste faire tomber ça pour qu'on puisse voir l'ensemble de la situation. Donc, nous avons 1/4 fichier avec trois commandes de mètres et vous pouvez toujours dire où la commande commence , car il vous donnera ce petit signe mineur. Bon, donc tout ça est considéré comme une seule commande. Souviens-toi, on pourrait jamais y entrer en 19 et puis c'est une autre commande. En ce qui concerne son, il a trois directives sont communes est qu'ils ont utilisé pour exécuter. Donc, si nous voulons exécuter un de ces trois ou une partie de toutes les commandes dans Wana Corey File week-end met juste en évidence qui déclenche les commandes sur le clic Exécuter ou appuyez sur F cinq, et il exécutera alors seulement ce qui a été mis en évidence. La preuve de ça. Quand nous irons ici, nous pouvons nous rafraîchir car nous ne voyons aucun changement. Donc, nous cliquons sur notre dossier de tables sur Just Refresh. Et puis nous voyons que nous avons des étudiants bbo et des cours bbo sont nouvellement créés. Table aussi ne pas ici est un bon indicateur quant à quand quelque chose se sent si j'achète quelques
oublis miracle et juste exécuter, alors nous allons le voir arrêté à la table. La directive crée des étudiants table sous la ville que nous avons déjà sur l'objet. Et puis ça n'est pas allé plus loin dans le quart. Bon, donc nous pouvons toujours mettre en évidence et exécuter la requête, ou nous pouvons exécuter, exécuter, et il passera par tout ce qui est dans le fichier. Donc, lorsque vous avez plus d'une commande, vous pouvez simplement les enchaîner seul et cliquer sur Exécuter une fois, et il les fera toutes. Dans cette vidéo, nous allons regarder utiliser l'outil orteil réellement effectuer toutes les opérations que nous avons juste si habilement écrit. SQL Statements toe Accomplissez maintenant Microsoft, donnez-nous ce magnifique outil Microsoft SQL Server Management studio. Et nous avons déjà établi que nous pouvons aller de l'avant et écrire des instructions SQL dans cet outil pour effectuer beaucoup des opérations. Maintenant, je suis sur le point de vous décrire comment vous pouvez créer une base de données sur des tables avec toutes écrire une ligne de SQL froid. Très bien, donc tout commence par un clic droit sur le dossier des bases de données afin que nous ayons déjà été connectés et nous verrons que nous avons des bases de données ici. Nous pouvons toujours étendre sur le contrat cet arbre nous juste juste à juste titre bases de données. Et puis nous verrons l'option Nouvelle base de données. Cela fera apparaître une boîte de dialogue qui nous demande ensuite quel nom voulez-vous pour la base de données afin que je puisse voir l'école. Et je viens de nommer ça sur V 2. Comme dans la version deux sur. Avez-vous quelques options ici, vous pouvez regarder Donc tous les jours deux B s est livré avec ce que vous appelez un M V F. Comme dans le fichier fan, qui est le fichier réel. stockage de toutes les données sur elle a beaucoup de feu, ce qui permet de suivre toutes les modifications apportées par rapport aux données. Donc, vous pouvez réellement spécifier un autre chemin en dehors de ce chemin par défaut où vous voulez qu'il aille. La plupart des administrateurs de base de données, ils seraient Ils auraient configuré le serveur pour avoir à différents disques durs sur l'un où le système d'exploitation est installé sur un autre, spécifiquement pour stocker le M V F sur les fichiers journaux. Bon, donc tu peux changer ça. Mais je ne changerai pas ça aujourd'hui. Je les laisse tel quel, et vous pouvez regarder les autres options. Quoi vraiment et vraiment, vous n'avez pas besoin de moi de changements ici. D' accord
, alors. On peut aller de l'avant et cliquer, OK ? Et ça va s'exécuter sur Douala There. Nous avons une nouvelle base de données, pas une ligne sur le terrain. Ensuite, pour créer les tables, nous pouvons simplement explorer la base de données sur puis à droite, cliquez sur les tables, Dossier sur nous voyons nouveau sur. Nous voulons juste une nouvelle table et vous pouvez voir que vous avez un tas d'options ici. Je ne vais pas entrer dans ceux aujourd'hui, mais nous pouvons juste aller de l'avant et voir la table, ce qui nous donnera une forme de concepteur. Donc il nous demande, Que voulons-nous comme nom de colonne ? Spécifiez les données. Tapez sur si vous voulez seul. Non. Donc, je vais aller de l'avant et recréer les deux mêmes tables dans le veto scolaire que nous venons d'écrire des scripts
SQL pour créer. Donc le 1er 1 le nom de la colonne. Je veux son I d. et ils peuvent tout d'abord s'arrêter pour traverser ou un type ici et impressionner Albany. Il suffit de perdre dans un mouvement latéral vers la droite. Ensuite, nous pouvons dérouler et voir la pléthore de types de données disponibles pour nous dans Microsoft. SQL. Nous avons grand dans un peu. Nous avons Charlie a les battements du temps flottant. Nous en avons un bon nombre, tellement que vous pourriez être submergé et vouloir tous les utiliser. Mais tu peux. Vous pouvez en fait juste garçon et créer une table, peut-être une avec une colonne pour le type de données, et vous voyez juste les différents comportements entre un pneu d'environ. 50 sur dans le bœuf Hvar Charm ou tout le tableau Environ. Voici diffèrent de pouces Are Home Alone est différent de la vraie petite journée, etcetera. Sicher Il y a un bon nombre. Donc, vous pouvez juste entrer et jouer le nôtre avec eux. Je l'encourage. Mais aujourd'hui, nous allons simplement nous en tenir à la tâche de recréer ces colonnes ces tables avec les colonnes
respectives. Alors j'étais parti. Tapez sur. Nous ne l'avons pas fait seuls. Non. Ensuite, vous voyez, Au lieu de me suivre, Tal spécifier des attributs à droite. Cela me donne en fait comme une fenêtre de propriétés, et je vais juste en parler un peu pour que nous puissions voir plus clairement, ce qui me permet ensuite de spécifier certaines choses. Non, afin de s'asseoir si ces clés primaires je dois d'abord à droite, cliquez sur Je peux voir ici définir la clé primaire. Donc, sachez que nous savons que c'est la clé primaire. Cependant, nous devons toujours vous dire qu'il a besoin de l'incrément automatique. Nous trouvons donc des spécifications d'identité. Donc, vous remarquerez que certains termes me diffèrent entre les instructions SLA sql sur la
vue du concepteur . Mais en fin de compte, quoi que ce soit que vous puissiez faire dans la vue du concepteur, vous pouvez écrire une déclaration accomplir sur vice versa. Donc, je veux spécifier que c'est de l'identité, et je ne peux juste pas penser que cela change la valeur ou vous pouvez juste laisser tomber sur cette liste déroulante et vous voyez juste oui sur. Ensuite, vous voyez qu'il vous donne toujours cette valeur d'incrément et cette valeur de semence, tout comme nous l'avons vu quand nous écrivions ou déclaration de compétence. Donc nous les laissons à un sur un, accord, et ensuite nous pouvons passer à la colonne suivante. Donc notre prochaine colonne dans notre base de données des étudiants était la dernière nouvelle sur celui-ci était environ. Essaie et il peut taper. Il essaiera de le compléter automatiquement pour vous avec ce qu'il sait Onda. Nous avons juste tapé sur par arrêt et puis il a également concouru et il est passé à l'option
suivante alors nous ne savons pas seul sur le nom de famille. Donc c'est un non Et puis le prochain prêt était le prénom Aussi environ fatigué Juste laisser le
complet automatique impressionné Stub sur DWI n'a pas seul sait sur nous avions la date hors naissance qui était le temps que nous n'avons pas seul Non sur Ensuite, nous avions des actes d'inscription qui est aussi a fait le temps sur celui-ci Nous sommes chargés d'être
Non, non. Une fois que vous avez terminé tout cela, ce que vous devez faire est de sauvegarder. Donc, une fois que vous enregistrez, j'ai utilisé le contrôle s C'est le raccourci Windows universel pour recevoir. Donc, j'ai dit contrôle s et puis j'ai obtenu cette boîte de dialogue, qui a ensuite dit interné pour la table. Donc, je veux que le nom de l'écurie soit des étudiants, les gens K. Et puis ce qu'il a fait était d'exécuter cette requête vory ou un orteil de carrière très similaire ce que nous avons écrit l'a fait en arrière-plan. Donc tout cela a juste généré cette inquiétude et l'a exécuté sur. Si nous passons dans nos tables, vous voyez qu'il a été créé avec succès. D' accord. Donc, nous pouvons aller de l'avant et créer la deuxième table d'une manière très similaire. Nouvelle table, et puis nous obtenons une nouvelle fenêtre. J' ai remarqué par défaut, c'est db o table sur le score un donc il ne sait pas quelle est son identité, où ceux qui lui disent ce qui est dans la vie. Donc, bien sûr, je d sur le type de données était int seul sait est actuellement coché. Si vous vous souvenez, j'ai dit qu'une fois que vous avez une clé primaire, vous n'avez pas nécessairement à mettre sur l'attribut not know. Donc, si l'Irakien peut dire nous définir primaire, il a remarqué que c'est automatiquement sur les coches cette boîte parce qu'elle ne peut pas supporter la clé primaire. Andi sait. Et si j'ai essayé de re ticket va voir ne peut pas être mis orteil seul sait une fois que cette colonne est une clé primaire. Très bien, donc il applique automatiquement ces attributs Une fois que vous cliquez sur et que vous cliquez sur. Correct. D' accord. Donc, nous avons eu le cours i d. Et puis nous avons eu le titre hors du cours, qui il a dit était environ type de pneu off 50 Ne sait pas seul. Oh, on a sauté l'étape dont on avait besoin pour définir la voie que je deviendrais automatiquement incrémentielle, alors on devait dire que je ne l'ai pas fait. La spécification est l'identité, et je peux juste double-cliquer sur tout ce qui dit oui afin que nous puissions aller de l'avant. Andi, je vais te montrer comment revenir en arrière et régler ça rétroactivement au cas où ça te manquerait. Donc on avait le titre. Nous avons eu le nombre de crédits et c'était entier sur. C' était beaucoup d'être non. Donc on peut laisser celui-là coché. Ensuite, on a eu le cheval. C' était à peu près Char et je peux tout laisser se terminer. Mais je peux toujours revenir en arrière et éditer, enlever zéro et faire cinq sur ce n'était pas savoir Et puis une fois que nous avons fini et nous sommes satisfaits de ce que nous avons fait, nous pouvons juste une fois de plus semble si. Nous contrôlons juste et s et puis il demandera le nom. C' était des cours que nous pourrions aller bien sur Douala afin que nous puissions juste aller de l'avant et rafraîchir cela et nous voyons que nos tables ont été créées avec succès. Donc, nous devons des bases de données avec deux ensembles identiques, vous savez, des structures. Mais alors une base de données n'interfère pas avec une autre base de données. Ainsi, des bases de données trop identiques peuvent coexister tant qu'elles ont des noms différents. SQL Server ne sera pas en mesure de savoir que tous ces deux sont identiques. Ils ne devraient pas être les mêmes qui sont vraiment guérissables les équipes parce que les tables sont dans le contexte de cette base de données.
9. Créer un tableau de base de données SQL en utilisant la gestion le Management Studio: notre dernière vidéo. On a fait ce qu'on fait d'habitude. Nous avons écrit SQL Script Accomplied Tasks. Maintenant, dans cette vidéo, nous allons regarder comment nous pouvons utiliser la mise hors tension de notre gestion de serveur de suite, studio toe, faire la même fonctionnalité sans nous conduire à écrire une ligne hors cour ou s Cuba. Donc, nous sommes de retour à notre écran similaire. Nous n'avons pas de script appelé ici, mais alors nous avons dans notre explorateur d'objets notre table de sorte que nous pouvons juste practica sont table sur. Ensuite, nous pouvons voir à son top 200 règles. Non, quand nous trompons cela, nous voyons un ancien tabula comme ce que nous décrivons dans les parties précédentes de ces vidéos nous
montrant toutes les données sur les colonnes respectives dans lesquelles se trouvent ces points de données. Donc on en voit un. Nous n'avons pas mis d'idées dans le système pour le savoir. Nous voyons que nous avons des pièces d'identité en cours de comptage. Nous avons sauté aussi, parce que rappelez-vous, nous essayons d'insérer une seconde requise une erreur italienne. Donc, l'er incrémental automatique a dit, oh, sur la tentative de deuxième enregistrement, était là Il échoue, mais qui n'est plus un nombre valide à utiliser pour identifier de manière unique quoi que ce soit, donc il saute orteil. Mais puis l'un l'autre réussi a obtenu sa propre valeur d'idée. C' est donc le point d'utiliser ces attributs d'identité. Deuxièmement, vous pouvez voir que chaque nom et prénom sont entrés. Donc, peu importe l'ordre que nous mettons l'appel, nous mettons les colonnes et ensuite mettons les données dans. Le fait est, les données auraient dû aligner avec chaque colonne sur la date de naissance sur je viens d'étendre ceci et vous voyez que parce qu'ils utilisent l'heure de la date même si nous n'avons pas spécifié déjà va spécifier les mois de l'année, et D, il ajoute toujours une valeur temporelle dessus. Donc, vous pouvez réellement utiliser ce temps grande valeur de temps si vous avez besoin d'orteil, garder le temps de suivi. Ce moment précis, quelque chose s'est passé sur le temps est très idée pour cela. Ensuite, nous avons l'inscription, qui est similaire. Mais alors nous voyons que nous avons certains avec des valeurs sur, autres avec le sait encore une fois parce que nous le pensons. Colonne inconnue. Ensuite, nous voyons que nous avons pu insérer des enregistrements sans valeur sur insérer certains avec des valeurs. Maintenant, vous avez peut-être remarqué que j'étais en mesure de cliquer dans la colonne sur elle est devenue irritable. Andi, si tu as pris note de ça, alors c'est excellent quand tu es là ce matin, il a littéralement dit qu'il avait dépassé les 200. Donc, il a lancé une petite requête dessus, a obtenu les 200 premières règles, et il nous a donné un formulaire où nous pouvons réellement changer ou en ajouter de nouvelles si nous le voulons. Donc d'abord, on va aux pieds. Ajouter de nouvelles règles. Donc, ces nouveaux étudiants, je vais utiliser mon nom de famille. Andi. J' ai un ami vieil artiness sur. Alors la date de naissance de cette personne est 2000 et une. Le neuvième mois, le 50. Je vais mettre une valeur invalide ici pour la date de naissance. Donc c'est le 50e jour. Nous le savons tous, au moins dans notre calendrier occidental. n'y a pas de 50e jour et je suis allé appuyer sur Entrée, ce qui déclencherait la sauvegarde sur. Ensuite, nous voyons ici que nous obtenons un message d'erreur. La valeur dans cette cellule n'a pas été évaluée, donc ça nous dit, Retournez à la planche à dessin. Il y a quelque chose autour, donc je l'édite maintenant. Enlève ce zéro sur les autres. Entrez d'abord et vous verrez qu'il tombe juste dans la file d'attente. Ces icônes rouges disparaissent. Onda, nous avons 1/12 requis Williams rt donc vous pouvez réellement utiliser cette vue orteil ? Il suffit de mettre dans vos dossiers. Si vous ne voulez pas écrire le script hors cours,
le script est plus flexible car vous pouvez réellement enregistrer le script, le partager et l' exécuter sur une autre machine à volonté. Alors que celui-là il faut être sur cette machine à particules dans cette base de données de particules , le remplissage il va. Donc c'est plus manuel pour moi, le script est plus automatisé parce que je peux toujours modifier cela et partager. C' est donc tout ce que vous insérez tous les deux des données dans vos tables de données. En utilisant l'éditeur, vous pouvez aller de l'avant et insérer plus d'enregistrements sur. Vous pouvez expérimenter avec l'insertion d'autres rapports dans les forces
10. Sélectionnez les enregistrements avec les scripts SQL: c' est dans cette vidéo, nous allons commencer à regarder comment nous pouvons aller en bateau extraire des données de plus de tables. Dans la vidéo précédente, nous avons inséré des enregistrements et, nous l'espérons, inséré jusqu'à une dizaine de rapports sur Non, nous voulons réellement commencer à les retirer sur la manipulation des données. Donc nous avons nos jupes pêche ouvertes. Nous savons que la première chose que nous faisons est de spécifier quelle base de données est cela. Nous sommes un bâton sur le script contre. Sur pour savoir, je vais vous montrer que vous avez le mot-clé use où vous dites use,
puis vous lui donnez le nom de la base de données. Um, puisque nous utilisons l'éditeur, je vais vous montrer que cette liste déroulante ici qui dit Maître dessus dira,
Maître, parce que Master, parce que Master, qui est une base de données système, est le base de données par défaut qui va être sélectionnée pour n'importe quel script. On peut utiliser cette liste déroulante sur. Nous verrons toutes les bases de données qui y sont répertoriées. Donc, si nous cliquons sur l'école, alors cela change le contexte de notre trimestre avec nous avoir à écrire utiliser l'école afin qu'il puisse utiliser l'une ou l'autre personnellement, je préfère l'école d'utilisation droite orteil parce qu'il va sur une autre machine sur par défaut est égal maître. Ensuite, il sait quand le script s'exécute, il utilise l'école, au lieu de le laisser à la mémoire. Pour changer cela lorsque vous êtes sur le point d'exécuter le script, puis vous pouvez finir par exécuter un script
potentiellement destructeur contre autour de la base de données. Alors soyez attentif à cela hors cours pour ce cours. Je voulais être très polyvalent, donc vous pouvez utiliser les deux méthodes. Je vais m'en tenir au mal que je connais et utiliser l'école pour obtenir l'intelligence sur laquelle tu peux appuyer sur le contrôle et l'espace. Quoi ? Vous savez probablement que déjà depuis que vous avez traversé tous les requins de clavier qu'il est sur, vous verrez qu'il vous donne réellement toutes les traditions sur vous aide à compléter certaines déclarations plus rapidement. Non, aujourd'hui sera à la recherche des instructions select, donc nous allons créer. Nous avons passé par insérer dans sur Non, nous regardons sélectionner et sélectionner fait exactement ce que le nom suggère. C' est choisir le théâtre à partir d'une table, et c'est exactement à quoi ressemble le lion de carrière. Sélectionnez. Et ensuite, quelles données voulez-vous ? Tu veux le prénom ? Voulez-vous le nom de famille ou voulez-vous tout dans les tables ? Si vous voulez des colonnes spécifiques, vous pouvez écrire la paille dans cette situation. Nous voulons toutes les colonnes afin qu'elles nous donnent un raccourci pour tous sous la forme d'un astérisque qui nous
permet de voir sélectionner tout de sorte que les Astors donne synonyme de tous Et cela signifie toutes les colonnes à partir de maintenant. Ensuite, nous spécifions la table et nous voulons que les étudiants que tout cela nous allons retirer tous les dossiers des
étudiants dans notre table des étudiants. Après l'exécution de la requête, nous voyons ici que nos résultats sont revenus. Tout est comme nous l'avons vu dans notre vidéo précédente. Cependant, dans cette vue, nous ne pouvons pas cliquer dessus. Il n'y a aucun de ces enregistrements,
Donc, la sélection est vraiment juste pour lire la bêta. Donc, quand vous étiez sur une commande select, vous lisez simplement les données pour me présenter avant les rapports. C' est juste te donner dans un grand ancien et tu peux vraiment changer ça. Les options air ici, équipe
orteil, les résultats, le fichier, ou de changer les résultats de liken fixe pour parler cela, puis re exécuter le partenaire
, puis détruit la différence dans les résultats. Donc, vous l'obtenez réellement sous forme prend au lieu d'une table. Ancien sur le fichier alors exporterait effectivement le fichier toe RPT afin que nous puissions juste le laisser sur grand comme le plus. C' est le plus commun. Et c'est celui par défaut sur nous exécutons et nous le voyons en grande forme. Encore une fois, il n'est pas admissible. Commençons à regarder quelques variations de ces instructions select. Donc je vais juste enlever celui-là dessus. Et si je voulais tous les étudiants, je ne voulais que les prénoms sur les noms de famille. Je ne voulais pas voir le i d. qui est aussi généré. Je ne voulais pas voir leur date de naissance ou l'inscription, je voulais juste voir le
prénom et le nom, donc j'utiliserais toujours select à cette occasion. Je ne veux pas voir toutes les colonnes. Je veux juste le tenir. Donc je veux le prénom. Ensuite, je viens un sépare toutes les colonnes que je spécifie. Alors prénom Homo nom sur. Ensuite, nous disons des étudiants sur Alors toutes ces erreurs disparaissent parce que maintenant il sait que le prénom et le dernier à la maison des étudiants que nous exécutons une fois de plus. Et nous voyons que nos résultats qui reflètent non seulement ces deux colonnes, prénom et moi de famille savent si nous tirons réellement ces points de données pour les rapports sur comprendre pour ajouter les besoins d'inscription à cela. Donc les dates d'inscription sur. Nous voulons voir tous les étudiants et leur inscription. C' est mais alors nous voulons exporter ceci pour exceller sur. Nous voulons une recherche sensée. Le prénom de Colony n'est pas, vous savez, convivial. Il a un F commun sur commun, et c'est un mot. Le prénom n'est pas un mot. Nom de famille n'est pas un mot, mais parce qu'ont été découragés d'utiliser des espaces dans la création de nos noms de colonnes. Vous n'avez pas écrit pour un nom d'espace, mais quand nous avons imprimé dit dans notre groupe, nous voulons réellement que les noms des colonnes soient plus
présentables . Donc, ce que nous pouvons faire, c'est dire, comme sur. Ensuite, nous pouvons écrire la chaîne que nous aimerions imprimer pour le nom de la colonne. Vous pouvez en fait l'écrire sans les États-Unis sur l'utilisation du crochet carré. Il suffit de voir les noms de famille. Je le fais dans les deux sens. afin que vous puissiez voir tous vos souvent donc le mot-clé as est en fait facultatif. Vous pouvez le mettre ici, puis le jour de l'inscription. C' est comme si nous avions discuté aurait l'air alambiqué, Onda confus. Alors comprenez d'amener ça à la prochaine ligne sur, je dirai dans le rôle de la date des hommes. Et puis nous exécutons ça. Et puis, si nous regardons les titres, vous voyez le premier nom de l'espace, nom de l'espace Onda dates d'inscription tous plus présentables et lisibles par l'homme. Encore une fois, nous pouvons toujours briser nos lignes parce que SQL sait où commence l'instruction et donc, si vous avez besoin de le faire juste toe, voir tout plus clairement, vous avez votre colonne de mot-clé sur son alias. C' est ce que nous appelons sérieux. Colonne d'appel d'alias HAMA COLONNE Zones on, alors c'est l'un des avantages de ce carré. Parce que si c'est un cas où vous avez créé par inadvertance notre colonne avec un espace dans le nom , alors vous pouvez réellement utiliser le crochet pour continuer à fonctionner. Mais alors, ce n'est pas une bonne pratique. Je n'aime pas le faire, et je ne le recommande pas. Donc, la rue ici vos noms de colonnes comme celui-ci utilisent soit un mot comme celui-ci dans toute utilisation en
minuscules . Vous êtes sur le score orteil séparer les noms que les mots ou chameau les casse. Mais puis en fin de compte, pour la présentation, vous voulez utiliser les alias de sorte que vos colonnes de tous regarder Donc disons que vous devez exécuter. Vos administrateurs disent,
Hey, Hey, j'ai besoin de ce rapport que vous imprimez. Vous mettez toutes les robes, alors vous en avez besoin dans Excel. Vous pouvez en fait juste un clic droit ici dans le coin. Donc, en frappant dans le coin, il sélectionne en fait toutes les données. Et puis vous pouvez distraire Lee et vous pouvez Poppy, et il va le copier en format tabulaire et vous pouvez le coller en lui-même ou vous pouvez réellement voir les résultats sur nous. chose la plus courante est de voir SV, qui peut être ouvert dans Excel de toute façon. C' est ainsi que nous allons exporter lors de l'extraction à partir de la base de données un fichier à des fins de
reporting. Essayons donc une autre chose et vous pouvez réellement exécuter plusieurs sélections dans un seul script. Ce qu'il fera est de séparer les résultats, donc je veux dire sélectionner l'étoile des forces. Je n'ai pas suivi de cours. Je ne suis pas sûr si vous l'avez fait, mais quand j'exécute ceci, je m'attends à voir quelque chose disant qu'il n'y a pas d'enregistrement dans la base de données. Donc, vous voyez ici quand vous et vous avez plus de sélections multiples, vous voyez les différentes sections pour chaque résultat de grille. Donc, nous voyons apparaître qui est notre première sélection sur. Alors ne le fais pas. Ici vous voyez les résultats de ou Deuxième sélection, que nous n'avons rien. Et prenez également note du fait que tous les noms de colonnes arrivent, mais comme ils ont été créés. Donc, en utilisant l'étoile ici, vous n'avez pas la possibilité de définir des alias. Donc, vous voulez probablement épeler vos colonnes sur les pénis définis pour quand vous allez
exporter les données pour un autre arbre de l'être humain. Donc, quand nous revenons avec étoile regardant l'extraction plus avancée pour manger sur le trou, nous pouvons aller sur le filtrage et sélectionner seulement quelques enregistrements sur exclure d'autres
11. Sélectionnez les enregistrements avec la gestion le Management Studio: Hé les gars, Dans cette vidéo, nous allons regarder des déclarations plus avancées de sélection et nous allons commencer à regarder comment notre éditeur nous aide à créer ces déclarations. Donc, tout d'abord, je vais plutôt créer un script pour extraire les enregistrements et lire les rapports de la base de données de l'école et la table des élèves. Je vais utiliser la fonction des éditeurs en explorant la base de données dans les tables et en trouvant la table à partir de laquelle je voudrais définir des règles. Ensuite, je vais faire un clic droit et aller à sélectionner les 1000 premières règles. Une fois que cela est fait, il générera effectivement une instruction select. Onda, rapportez tous les résultats en conséquence. Maintenant, prenons un peu de temps et disséquez l'instruction select qui est générée pour nous. Nous voyons ici, nous connaissons notre mot-clé select on et nous savons qu'entre la sélection sur le front, nous avons vraiment une liste hors colonnes. Ensuite, nous avons un mot clé supplémentaire en cours d'introduction ici dans le formulaire en haut sur ce que cela fait
vraiment est de voir me donner le premier numéro X hors record. Donc, l'option par défaut nous donne 1000 bien sûr, les seuls ont 11 enregistrements déjà dans la baie de Tau. Donc, un orteil et est plus que suffisant pour récupérer tous les rapports dans notre base de données sur. Si nous avions une base de données à partir de 10 000 rapports, alors cela nous donnerait vraiment les 1000 premiers rapports. Donc si je ne voulais que cinq disques et que je changerais sa valeur à cinq en disant : Donne-moi les cinq premiers et on y va. Une autre chose que je veux souligner est le nom complet de notre table. Maintenant, si nous n'avons pas disséqué cette ligne, vous voyez que nous avons les points de nom de Beetle B, le contexte ou le nom du schéma, qui, si c'est dans les séances d'automne, serait DDO sur un autre point sur puis l'objet table. Donc, c'est en fait le nom de la table entièrement qualifié, qui signifie que si ce script de base de données n'est pas dans le contexte de la base de données spécifique,
vous pouvez en fait tout simplement tout ce qui se trouve ici dessus ne sera pas contextualisé à cette base de données. Donc je vais changer d'école en haut pour l'école en v 2 sur. Ensuite, si je l'exécute à nouveau pour enregistrer que nous n'avons pas de données dans notre école de veto les tables comprennent rapidement faire monter cette table et vous montrer que cela n'a pas d'enregistrements sur. Nous pouvons voir ici que nous aurions l'école V deux étudiants sombres que d v o points étudiants. Donc, si je lance cette inquiétude, même si j'ai contextualisé des scripts à l'école sur un veto de score, si j'exécute ce carré en ce moment, il saura que je veux la table des étudiants qui se trouve dans la base de données de l'école, et c'est l'avantage d'utiliser ce nom de table de base de données entièrement qualifié. Donc, cela nous permettrait en fait d'être en mesure d'interroger différentes tables de différentes
bases de données le tout dans un seul script. Cinq. Non, élargissons un peu notre portée. En fait, commencez à regarder filtrer pas là fois où vous voulez seulement certains enregistrements. Je vais juste supprimer ces contraintes sur exécuter pour toutes les colonnes une fois de plus et me rappeler que si vous vouliez hors colonnes sans avoir à taper, le moteur pourrait remplacer cela par une étoile sur l'ordinaire que Ford nous donne chaque colonne . Donc, si nous voulions filtrer et trouver, voyons seulement les étudiants dont le nom de famille est Williams ou nous voulions voir que le Williams est dans notre base de données. C' est un formulaire hors filtrage parce que non, on se rétrécit. Ne pas les résultats qu'une condition spécifique ce que nous appelons ? Donc, SQL nous donne un mot clé dans la forme off où alors il nous permet de spécifier une condition par la suite, une condition pourrait être comme une colonne étant égale toe une certaine valeur ou être supérieure à
inférieure ou ressemblant à elle. Ce sont toutes des conditions dans cette situation. Encore une fois, le scénario est que nous ne voulons que les étudiants dont le nom de famille est Williams. Nous voyons que nous n'en avons qu'un, donc nous ne devrions nous attendre qu'un seul rapport revienne. Donc, je vais juste lire une nouvelle Corée Ne pas ici et avec le commentaire celui-ci dehors donc je peux juste mettre en évidence tout cela sur Ne utiliser ce fond apparaît ou une fois de plus, maintenez sur le contrôle de la touche et appuyez sur la touche et voir ainsi une fois de plus, notre objectif arbre d'histoire. Seulement les étudiants avec le nom de famille Williams. Donc, je vais ajouter un nouveau mot-clé où et ensuite je vais ajouter la condition. La condition est articulée sur le nom de la colonne. Donc, je dis, le
nom de famille sur ma condition stipule que les colonnes de nom de famille doivent être égales Teoh une valeur
spécifique. Et je vais juste aller de l'avant et produire cette valeur ici. Donc, parce que nous comparons une colonne de chaîne ou une colonne d'environ requin, c'est un mot que nous devons nous assurer que nous le comparons avec aussi un mot ou une chaîne. Donc, si je vais de l'avant et que je l'exécute, alors nous verrons que nous sommes filtrés de l'orteil de données. Ne récupère que les étudiants avec le nom de famille Williams. Dans ce cas, nous n'en avons qu'un. Mais alors essayons un plus populaire. Donc, on a eu un test de balle. Andi, je veux un étudiant avec le nom de famille, quelqu'un à exécuter, et on n'en a qu'un. Maintenant c'est bizarre. Mais c'est très précis parce que si nous une fois de plus et je vais juste ne pas engager cela en soulignant cela et en choisissant exécuter, je peux spécifier que je veux seulement exécuter ce travail sur die. Je vois que j'ai eu un bon nombre d'étudiants avec le nom de famille étudiant, sauf qu'un seul avait étudiant. Tout le monde avait un numéro attaché au mot étudiants, ce qui nous amène à un autre type de filtrage où nous pouvons filtrer sur ce qu'on appelle Ah, joker. Le joker est essentiellement à la recherche d'une partie de texte qui répond à nos exigences et apporter tout ce qui répond à ce modèle. Donc, je vais juste, eh bien, ne pas ici et crée une autre requête. Donc, dans ce scénario, nous voulons tous les étudiants avec un mot étudiant dans leur nom de famille, ce qui signifie que nous devons dire où le nom de famille une fois de plus, la colonne qui est en litige pour la condition. Mais alors, au lieu de voir égal, nous allons voir comme Non, comme Greedo. Mais c'est aussi un mot-clé après ou comme mot clé, nous allons utiliser l'utilisation off. Ce que nous appelons un wild card sont maintenant symbole wild card est sous la forme d'un modèle sont présentés . Signe sur ça. Cela nous permet de spécifier uh, séquence de
caractères que nous recherchons dans n'importe quel bloc de texte. Ce qui veut dire que si je veux tous les noms qui ont la lettre que j'ai dedans, je peux voir que c'est ouvert. Politicien Mark a présenté signe ou modélisateurs I et ensuite modéliser ISS sur, alors cela va vraiment dire que je me fiche de ce qui vient avant. Je me fiche de ce qui vient après tant que je suis quelque part dans un bloc de texte qui se trouve dans la colonne de nom de famille, alors je devrais le ramener. Et nous pouvons l'identifier en regardant les résultats selon lesquels au moins trois enregistrements devraient être retournés. Alors testons cette théorie et voilà. On a Macintosh Williamson sur Williams, alors il a juste cherché à le voir. Ne se souciait pas si EMC est venu devant les yeux sur Vous pouvez remarquer qu'il n'est pas sensible à la casse, car c'est un je commun que je recherche et c'est une majuscule dans le bloc de texte, et il ne se souciait vraiment pas de ce qui est venu après l'œil tant que le bloc de texte et je sur le revers, vous pouvez aussi dire que vous voulez tout ce qui commence avec un oeil, signifie qu'il va voir que je suis à la recherche et je me fiche de ce qui vient après. Non, sur la
base des résultats que je ne pense pas que nous récupérerons parce que vous n'avez pas de noms qui commencent par moi dans le même être que nous pouvons voir. Nous voulons que quelque chose se termine en I en mettant le caractère générique avant la lettre pour que je puisse voir joker card. Mais le dernier personnage devrait être à l'œil sur alors. Nous ne devrions pas non plus obtenir de résultats ici, car nous n'avons rien qui se termine par. Je sais que cela ne se limite pas à une lettre. Nous pouvons en fait chercher une fois de plus n'importe quelle séquence de caractères. Donc, notre objectif, selon ce commentaire ci-dessus, est de chercher n'importe quel nom qui contient le mot étudiants. Donc, si nous écrivons en carte, nous ne nous soucions pas de ce que je viens avant cette séquence de personnages, qui épelle le mot étudiants, et nous n'entendons pas ce qui vient après elle. Donc si j'exécute ça, alors nous devrions récupérer tous les étudiants avec le nom de famille contenant le mot étudiants. Si je cherche la voiture pour la séquence qui sort le mot Williams, alors je devrais récupérer au moins deux résultats parce que nous avons un étudiant avec Williams sur un avec Williams, et c'est comme ça que vous allez utiliser ce caractère générique Maintenant. Notre prochaine tâche consiste à retirer les noms complets des étudiants dans notre base de données sur leur respectif et Roman, c'est Andi. J' ai déjà rédigé la carrière où nous avons dit que Select spécifiait les vêtements que nous voulions sur la table dont nous voulons qu'ils soient. Nous avons discuté dans un trou vidéo précédent. Nous pouvons rendre nos noms de colonnes un peu plus présentables. Ce que nous allons discuter de non, c'est en fait créer nos propres colonnes pour représenter nos propres données. Non, on a dit des noms complets. Oui, le prénom sur le nom Comprend un nom complet, mais alors ils sont toujours dans des problèmes complètement différents. Je veux une colonne qui stocke le nom complet. Donc, je vais aller en bateau créer une colonne sur en le faisant. Je peux En fait, aucun SQL ne nous permet réellement d'entrer n'importe quelle valeur que nous voulons revenir avec l'enregistrement de plage. Donc, par
exemple, si je le voulais, l'argent imprimera le numéro un ou je voulais imprimer les mots Hello class ou plutôt, ces étudiants, tant que je sépare une virgule de la dernière colonne, alors je peux réellement le faire et puis vous voyez que nous obtenons le prénom le nom de famille Random Carter que j'ai mis en seulement ceux sans nom de colonne sur ce texte. C' est ses collègues étudiants connaissent le nom de la colonne sur les actes d'inscription. Nous avons discuté que si nous voulions donner à la colonne un nom spécifique, nous pourrions simplement dire comme ou juste avec des crochets, le nom So friend, um number. Et puis je peux l'exécuter à nouveau et nous voyons que non, nous obtenons effectivement cette colonne avec le nombre aléatoire de la colonie, donc cela peut être utile dans certaines situations. Mais en fonction de notre objectif pour cette activité, nous voulons une colonne qui stocke le nom complet des étudiants. Donc, je vais à ce que nous appelons chaîne de concaténation ou joindre les chaînes ensemble ou joindre les valeurs dans ces deux colonnes ensemble pour nous donner un nom complet afin que je puisse réellement dire quelque chose comme Prénom sur. Ensuite, en SQL, nous utilisons le signe plus pour dire cette valeur de colonnes, plus cette valeur de colonnes valeur Andi car il est entre deux Commerce. SQL va en fait voir tout ce qui vient ici comme une valeur ou une colonne pour les résultats de, donc je vais juste l'exécuter. Et nous pouvons voir que nous obtenons le
prénom, le nom et la colonne personnalisée que nous venons de mettre que nous n'avons pas donné de nom. Donc pas de nom de colonne, Mais alors si nous regardons les valeurs qui viennent mais nous voyons que nous n'avons pas d'espace, c'est quand même qu'il semble plus camel que les humains lisibles. Donc, nous avons réellement besoin de mettre manuellement l'espace auquel nous nous attendions donc si je dis
le prénom , puis la concaténation sur une chaîne vide. Donc, je viens d'ouvrir une guillemet, marque d'abord la barre d'espace et ferme le guillemet. Ensuite, je suis une fois de plus fascinant le nom de famille. Ensuite, nous verrons quelque chose qui semble plus convivial pour les lecteurs. Donc, nous avons le prénom à gauche sur le nom de famille pour les droits sur Encore une fois, nous avons toujours pas de nom de colonne, donc nous pouvons juste avoir le nom de la colonne nom complet. Et puis parce que nous avons le nom complet, nous pouvons effectivement supprimer la colonne prénom dans la colonne Nom de famille. Donc, non, vous aurez le nom complet sur, et je donnerai un joli nom aux dates d'inscription. Donc l'inscription, les dates et le nom complet et puis nous exécutons. Et ici, nous avons le nom complet sur l'inscription est et vous pouvez toujours devenir aussi descriptif que vous souhaitez contre un étudiant Nom complet. Pour que tout lecteur qui regarde ce rapport puisse savoir exactement qui est listé à gauche et quelles sont les dates qui les relient à droite ici. Donc, je fais juste votre sainte peut Global en utilisant certaines déclarations de sélection orteil personnaliser comment vous présentez vos données. Ok, si ouvert de savoir que je me suis concentré sur les étudiants. Maintenant, faisons quelques carrières avec notre table de cours. Je n'ai pas créé de vidéo. La création du contenu du cours est stable. Je vous ai, cependant, donné un script qui remplit certains enregistrements dans vos cours stables. Et j'espère que dans votre expérimentation, vous auriez peuplé ici, bien
sûr, est stable avec quelques données. Donc, vous avez assez pour jouer avec les nôtres pour ces quelques exercices. maintenant, Jusqu' àmaintenant,nous nous sommes concentrés sur notre table d'étudiants. J' espère que vous auriez rempli votre table de cours. Eh bien, vous expérimentez de toute façon. Un script fichier une touche de cette vidéo, qui vous donne quelques données pour remplir votre table de cours avec de sorte qu'au moins ces activités vous pouvez passer par des données de test. Nous nous sommes donc concentrés sur la manipulation des chaînes et des environs de nos valeurs sur No. Je veux juste regarder comment nous pouvons filtrer les valeurs numériques avec des valeurs numériques. En fait, nous pouvons réaliser, des comparaisons numériques supérieures à moins que nous ne pouvons chercher l'égalité. Et ces deux exemples nous feront découvrir certains de ces exemples. Nous voulons donc tous les cours de nos cours. Cependant, avec le nombre de crédits de réduction étant supérieur à deux sur, si vous jetez un coup d'œil à la conception, notre parcours est stable. Vous êtes appelé que nous avons fatigué du nombre de crédits, qui est un nombre entier ou une valeur numérique sur le score de cours. Donc, tout accepte nombre de crédits sur le I. D. Nos onduleurs, donc nous allons juste dire rapidement, Sélectionnez sur nous voulons étoile de et nous devons pleinement qualifier notre table. Et puis nous voyons où nombre de crédits, qui est notre colonne, est très ter que de. Donc je veux tous les cours où le nombre de crédits est supérieur à deux. Donc, si j'exécute ça, je vois que je récupère quatre cours sur. Ils ont tous des valeurs supérieures à deux. J' aurais généralement pu dire égal à pour savoir s'il y a même un pour prédire le cours sur. S' il y avait plusieurs, alors reviendrait plusieurs. Donc, je sais que nous avons plusieurs cours de trois crédits, donc je comprends que les trois et exécuter que nous voyons nous avons tous les trois
cours de crédit . En revanche, je vais sélectionner sur. Je viens de copier cette requête ici sur aller juste modifier pour dire, sélectionner des cours avec le nombre de crédits hors crédits. Trois. Et nous voulons n'importe quoi. Avec le nombre de crédits, Maximum trois conseil rien de moins de trois est acceptable. Donc, ce que nous avons fait ici, c'était juste dire moins ou égal à trois. Le nombre de crédits devrait être inférieur à trois, et alors si nous exécutons cela,
nous devrions voir nos trois cours de crédit ainsi que plus de deux cours de crédit, et si nous avions un cours de crédit, il serait aussi spectacle. Mais rien de plus de trois n'apparaît
12. Insérez les données dans la table avec les scripts SQL: Hé, les gars. Dans cette vidéo, nous allons commencer à insérer des rapports dans nos tables de base de données aujourd'hui. Notre choix de table de base de données est les étudiants, nous allons
donc créer quelques rapports d'étudiants sur l'utilisation de scripts SQL pour le faire
ainsi que sur la façon dont nous pouvons utiliser l'éditeur pour accomplir cette tâche. Maintenant, il y a quelques choses à faire avant de commencer à écrire votre script, et l'une d'entre elles est de sélectionner la base de données que nous sommes sur le point d'utiliser ou les cibles pour notre script Donc, une fois de plus, . pour sélectionner cette base de données, nous devons utiliser le mot-clé use sur. Nous spécifions la base de données par nom, donc dans ce cas, nous voulons l'école sur. Ensuite, nous allons un bateau créant notre script. Maintenant, les mots-clés impliqués dans la saisie de notre enregistrement ou l'insertion d'un enregistrement
sont littéralement debout. Cela vraiment et vraiment si insère. Et puis nous disons dans et puis nous sommes attendus à voir quelle table de base de données sur. Ensuite, quelles colonnes étaient insérées dans ce faire ont été appelées. Quand nous avons créé notre table. Nous l'avons créé avec quelques colonnes sur. Nous pouvons toujours juste percé sur le dans l'Explorateur d'objet sur développer les colonnes et voir et rafraîchir vous-même sur. Vous pouvez voir insérer dans sur la table. Le nom est inscrit sur les étudiants. Parfois, vous verrez en fait plus profond tout le nom. Étudiants Bbo dot. Donc, BBO est juste un mot-clé qui est dans le contexte de Microsoft SQL Server On it. Il se trouve devant, plus stable. Donc, même si vous ne l'avez pas mis là, il est
probable que vous le verrez apparaître dans les paramètres par défaut. Très bien, donc vous pouvez toujours voir insérer dans. Mais je laisse le db o pour non sur la table, nom sur. Ensuite, vous ouvrez une parenthèse. Tu n'as pas besoin de l'espacer là et de t'habiller. Ensuite, ces parenthèses, vous spécifiez réellement les colonnes dans lesquelles vous allez entrer des données maintenant. Ceci est important parce que rappelez-vous quand nous configurions ou tables, nous avons mis en place un hors des colonnes, que nous avons appelé idee pour saisir la clé primaire sur auto incriminant. Ça veut dire que quand on insère un disque, on n'a rien mis ici. Nous devons spécifier d'autres colonnes que le nom de famille, prénom date hors naissance à l'inscription, sur ce que nous ne pouvons pas mettre ou ne devrions pas essayer de mettre quoi que ce soit ici. Donc, nous devons spécifier. Rappelez-vous également que l'un de ces était une charge pour être non, qui était l'inscription. Donc je peux juste plus et tu verrais York et cet explorateur d'objets expansion. Et vous voyez ici le nom de famille ne sait pas. Prénom, pas de date de naissance. Je ne sais pas, mais l'inscription soit. Ça pourrait être non. Ce qui signifie que je pourrais spécifier jusqu'à trois colonnes. Je n'ai pas besoin de spécifier les quatre. Donc je vous montre juste que c'est pourquoi nous spécifions les colonnes. Parce que pas jamais m'enregistrer obtenir chaque bit de données hors cours. Si le point de données n'est pas crédule, alors il n'exécutera pas le script parce que je ne peux pas mettre un enregistrement étudiant. Je ne peux pas insérer quelque chose dans la table des étudiants. Nous bien que c'est l'un des points de données obligatoires. Ok, alors travaillons à travers ça. Donc le 1er 1 est le nom de famille, et je sais que certaines personnes n'aiment pas le type, donc vous pouvez simplement glisser et déposer dessus. Ensuite, vous verrez que les rédacteurs de l'école ont effectivement mis entre crochets. Donc, c'est aussi une fonctionnalité que vous remarquez Quand s studio de gestion UAL génère une partie du SQL pour vous ? Ils mettent généralement ces crochets entre crochets comme nous continuons, je vais expliquer à quoi servent ces crochets. Donc, nous pouvons juste se rencontrer en beaucoup et nous simplement glisser et déposer dessus. Je remplirai tout ce dossier avec tous les points de données. Nous sommes donc insérés et utilisés pour porter l'insertion dans la table des élèves dans les colonnes. Nom,
prénom , date de naissance, date
d'inscription. Et puis vous voyez que la ligne rouge est qu'ils sont donc cela signifie que le script n'est toujours pas tout à fait terminé parce que nous devons spécifier quelles valeurs iront dans chaque creux. Donc, nous devons dire des valeurs et je brise juste la ligne et je ne fais pas ça. Ensuite, nous ouvrons et fermons la maladie des parents à nouveau dans ces maladies de feu. Nous devons nous assurer que les valeurs que nous insérons ici s'alignent avec les colonnes qui ont été commandées ici. Donc, la première valeur doit être le nom de famille et désolé dans SQL. Je trouve plus facile d'utiliser les tribunaux uniques pour une chaîne. D' accord. J' ai recours à des tribunaux doubles, et c'était un accident. Utilisez des guillemets simples lors de l'utilisation SQL Microsoft SQL que ces nom de famille Andi, Je vais insérer des ID rénaux. Prénom. Donc Reynolds s'aligne avec son nom de famille. La valeur suivante devrait s'aligner avec le prénom, euh, e date de naissance. L' heure de la date. Quatre mois. C' est par défaut dans SQL Server est l'année. Mois D sur qui vient dans le tableau de bord y y y y y. Mm Dash e. d. Si vous êtes familier avec Excel, alors vous êtes familier avec ces date quatre mois ? Sinon, c'est bon. Lorsque vous entrez une date en s dual dans une colonne qui est à l'heure ou même bat une fois que c'est un type de
date, les quatre mois attendus devraient être l'année. Donc nous sommes dans L'année de la dispersion est née en 1980. C' est le premier mois du 15e jour. Donc, une fois de plus, c'est l'année qui pleure qu'ils s'attendent à votre tir et pour les battements d'inscription, nous entrerons 2019 tiret 05-0 watts. Donc c'est le premier de moi. 2000 et 19, puis nous pouvons examiner cela et nous assurer que toutes les valeurs sont correctes sur correctement aligné. Encore une fois, ces valeurs doivent correspondre à l'ordre dans lequel les colonnes apparaissent, puis nous pouvons aller de l'avant et exécuter. Et une fois que nous exécutons, nous savons que c'est un succès. Quand il fait cette seule ligne affectée, cela signifie
que quoi que ce soit nous avons fait, notre rôle a été en quelque sorte affecté si elle a été créée dans d'autres exemples, vous voyez où nous pouvons manipuler les données. Sinon, il s'agit d'un indicateur que le script a réussi à manipuler cette règle. Donc peu errant et insert sont un autre enregistrement. Alors écrivons à nouveau le script à partir de zéro. Donc, une fois de plus, nous disons insère dans, puis nous choisissons un nom de table étudiants. Et puis il a ouvert et fermé les parenthèses et au moins toutes les colonnes quelque part pour mélanger un peu
l'ordre des colonnes. Je vais dire le prénom d'abord,
puis le nom de famille. Alors c'est hors de la naissance. C' est un fait. Je vais faire la date d'inscription, donc je veux que vous voyez les flèches que vous obtenez lorsque vous ne suivez pas les règles que vous avez définies pour les colonnes. Donc les valeurs sur, puis dans la liste des valeurs, nous devons nous assurer que le premier jour, nous avons un prénom, nous pouvons dire Jodi Macintosh sur Ce sont des nouvelles purement fictives sur les dates d'inscription. Je vais juste dire non parce qu'on peut passer une valeur nulle sur. Alors je vais exécuter ça. s'attend à ce que nous obtenions une flèche parce que nous disions que la date de naissance est obligatoire. Oui, nous essayons d'insérer un nouvel étudiant sans valeur de date de naissance. Donc, si je dis exécuter, alors nous voyons ne peut pas insérer la valeur, pas dans le remorquage. Cette colonne. Donc, nous sommes sur la flèche Message sent donc nous savons que nous devons rectifier notre orteil de script, refléter nos règles. Donc je dois le dire dès la naissance. Andi, je dois valeurs donc 1994 le troisième mois, le B an mois D, et puis on exécute et on verra. Voila. Une ligne affectée. Faisons encore un ajustement à cette pile de scripts. Je vais juste à Au lieu de tout enlever, je suis juste en curieux les valeurs sur je ne vais pas non plus insérer les actes d'inscription. Donc prénom nom nom, date de naissance. Vous vous souvenez que l'inscription l'a fait. Ce n'est pas petit. Ce n'est donc pas un champ obligatoire. Donc cette fois, nous voulons pour So Willie Anderson Onda ses actes hors naissance est l'année 1995 8ème mois, septième jour et puis nous cliquons sur exécuter et là vous l'avez. Donc, cela requis est allé dans la base de données sans aucune inscription. Donc, jusqu'à présent, nous aurions au moins trois rapports dans notre base de données. Maintenant, vous pensez probablement que c'est fastidieux. Chaque fois que j'ai quelqu'un à insérer, je vais devoir effacer ou,
tu sais, tu sais, réorganiser ou quelque chose comme ça. Mais alors il y a un nous pour faire un insert multiple en utilisant un insert dans les instructions, et c'est ce que nous sommes sur le point de faire. Donc, quand nous allons insérer plusieurs enregistrements dans une instruction, ce que nous faisons c'est que nous maintenons cette première ligne, l'insertion jusqu'au nom de la table, puis nous épelons toutes les colonnes. Disons que tous ces deux prochains enregistrements n'ont pas été inscrits. Donc ce qu'on fait est d'écrire le 1er test 1 sur je vais juste être très court. Aucun étudiant en dispersion n'est né. 2000 et un mois. S' ils Andi genre cendres dévouées qui utiliseront des barres obliques, il peut être pardonner parfois quand vous mélangez vos chers quatre mois, mais finalement c'est le format de date qu'il s'attend à ce que l'inscription Andi soit il est non, non. Quand je veux plusieurs enregistrements dans une seule déclaration, ce que je vais faire est juste de menacer Hama et ensuite passer à la ligne suivante. Andi, accord, un
autre de ces gens comprennent la ville cette ligne sur le pavot en paix et cette personne
ne teste qu'un étudiant, un en congé à la même date de naissance. Ou laissez-moi simplement le changer pour que nous puissions voir la différence des données à l'époque, autant d'enregistrements que vous avez. Vous écrivez juste une virgule et vous pouvez juste dupliquer cette ligne sur ce que je viens de faire pour dupliquer est un autre mot de garder requin. Mais j'ai tenu sur le contrôle sur l'envie DSI, qui s'arrête et la paix. Mais alors, sans mettre en évidence la ligne, il duplique simplement ce qui est aligné les curseurs sur. Donc c'est un autre voyage à besoins que vous pouvez suivre le deuxième CV de troll à plat et en mettre
autant que possible, n' est-ce
pas ? Chaque virgule séparée jusqu'à la toute dernière de la série et hors cours éditeur avec moi. Pas d'erreur. Important, vous avez dit que c'était invité. Donc je vais aller de l'avant et réparer ces enregistrements un peu le jour. Nous verrons alors comment cela fonctionne. D' accord, j'ai fait quelques ajustements à ce script. Nous insérons dans le tableau et je viens de mettre quelques différences dans les données afin que nous puissions aller de l'avant sur Ne pas être confus. Nous toe Toutes les données répétées afin que vous puissiez voir où chaque enregistrement est unique dans son propre droit sur Guy a laissé certains hors les dates d'inscription comme pas mis dans certains sous vous montrant que
autant d'enregistrements que vous avez. Vous pouvez l'utiliser. Il suffit d'utiliser cette technique et de les enfiler. Ensuite, nous allons exécuter une fois et puis nous pouvons voir que nous nous déplaçons de l'orteil habituel Wataru affecté. Sept règles affectées parce que nous avons inséré 1234567 ans étudiants. Donc, autant d'enregistrements que vous mettez une fois qu'il n'échoue pas, vous verrez un message comme celui-ci indiquant que vous avez fait quelque chose de bien ? Non. Je sais que nous avons inséré,
inséré , inséré, et vous vous demandez probablement, vous savez, est cette icône que je ne vois pas la journée. Ils voient une phrase. C' est sa Rose affectée. Je veux voir les données. C' est très bien. Nous avons une autre vidéo qui sort où nous commençons à extraire des données. Mais d'ici là, je vais vous montrer un très rapidement pour voir les données sur aussi trou. Nous utilisons l'orteil de l'éditeur, répliquons ce genre de fonctionnalité. J' ai donc fait quelques commentaires sur ce script sur je vais vous montrer comment nous pouvons voir un fichier script . Donc vous avez écrit un script comme celui-ci. Peut-être que vous avez été chargé d'écrire le script pour réellement mettre dans tous les enregistrements des étudiants, puis vous devez le soumettre à un administrateur de base de données ou à quiconque va réellement appuyer sur le déclencheur. Vous devez avoir ce fichier exportable. Vous pouvez en fait simplement enregistrer le contrôle de fichier s ou goto fichier et cliquez sur. Enregistrer sur, puis cela vous invitera à savoir où vous voulez placer les fichiers. Je vais juste mettre celui-là sur le bureau. Je vais voir insérer des étudiants sur l'extension de fichier par défaut pour n'importe quel SQL Enfin démarrer SQL afin que je puisse juste voir cela. Et puis vous serez en mesure de revenir ou d'ouvrir ceci et de l'exécuter sur un autre ordinateur. Ou dans une autre séance où vous avez une base de données scolaire, j'ai besoin d'être son nom. L' école. Andi, toutes les données doivent entrer dans ces tables. C' est ainsi que vous allez exporter vos scripts et les enregistrer pour référence future. Peut-être que tu y travailles. J' en ai besoin pour plus tard. C' est comme ça que c'est fait.
13. Insérez les données dans la table avec la gestion Studio: notre dernière vidéo. On a fait ce qu'on fait d'habitude. Nous avons écrit SQL Script Accomplied Tasks. Maintenant, dans cette vidéo, nous allons regarder comment nous pouvons utiliser la mise hors tension de notre gestion de serveur de suite, studio toe, faire la même fonctionnalité sans nous conduire à écrire une ligne hors cour ou s Cuba. Donc, nous sommes de retour à notre écran similaire. Nous n'avons pas de script appelé ici, mais alors nous avons dans notre explorateur d'objets notre table de sorte que nous pouvons juste practica sont table sur. Ensuite, nous pouvons voir à son top 200 règles. Non, quand nous trompons cela, nous voyons un ancien tabula comme ce que nous décrivons dans les parties précédentes de ces vidéos nous
montrant toutes les données sur les colonnes respectives dans lesquelles se trouvent ces points de données. Donc on en voit un. Nous n'avons pas mis d'idées dans le système pour le savoir. Nous voyons que nous avons des pièces d'identité en cours de comptage. Nous avons sauté aussi, parce que rappelez-vous, nous essayons d'insérer une seconde requise une erreur italienne. Donc, l'er incrémental automatique a dit, oh, sur la tentative de deuxième enregistrement, était là Il échoue, mais qui n'est plus un nombre valide à utiliser pour identifier de manière unique quoi que ce soit, donc il saute orteil. Mais puis l'autre réussi a obtenu sa propre valeur d'idée. C' est donc le point d'utiliser ces attributs d'identité. Deuxièmement, vous pouvez voir que chaque nom et prénom sont entrés. Donc, peu importe l'ordre que nous mettons l'appel, nous mettons les colonnes et ensuite mettons les données dans. Le fait est, les données auraient dû aligner avec chaque colonne sur la date de naissance sur je viens d'étendre ceci et vous voyez que parce qu'ils utilisent l'heure de la date même si nous n'avons pas spécifié déjà va spécifier les mois de l'année, et D, il ajoute toujours une valeur temporelle dessus. Donc, vous pouvez réellement utiliser ce temps grande valeur de temps si vous avez besoin d'orteil, garder le temps de suivi. Ce moment précis, quelque chose s'est passé sur le temps est très idée pour cela. Ensuite, nous avons l'inscription, qui est similaire. Mais alors nous voyons que nous avons certains avec des valeurs sur, autres avec le sait encore une fois parce que nous le pensons. Colonne inconnue. Ensuite, nous voyons que nous avons pu insérer des enregistrements sans valeur sur insérer certains avec des valeurs. Maintenant, vous avez peut-être remarqué que j'étais en mesure de cliquer dans la colonne sur elle est devenue irritable. Andi, si tu as pris note de ça, alors c'est excellent quand tu es là ce matin, il a littéralement dit qu'il avait dépassé les 200. Donc, il a lancé une petite requête dessus, a obtenu les 200 premières règles, et il nous a donné un formulaire où nous pouvons réellement changer ou en ajouter de nouvelles si nous le voulons. Donc d'abord, on va aux pieds. Ajouter de nouvelles règles. Donc, ces nouveaux étudiants, je vais utiliser mon nom de famille. Andi. J' ai un ami vieil artiness. Alors la date de naissance de cette personne est 2000 et une. Le neuvième mois, le 50. Je vais mettre une valeur invalide ici pour la date de naissance. Donc c'est le 50e jour. Nous le savons tous, au moins dans notre calendrier occidental. n'y a pas de 50e jour et je suis allé appuyer sur Entrée, ce qui déclencherait la sauvegarde sur. Ensuite, nous voyons ici que nous obtenons un message d'erreur. La valeur dans cette cellule n'a pas été évaluée, donc ça nous dit, Retournez à la planche à dessin. Il y a quelque chose autour, donc je l'édite maintenant. Enlève ce zéro sur les autres. Entrez d'abord et vous verrez qu'il tombe juste dans la ligne. Ces icônes rouges disparaissent. Onda, nous avons 1/12 requis Williams rt donc vous pouvez réellement utiliser cette vue orteil ? Mettez juste dans vos dossiers. Si vous ne voulez pas écrire le script hors cours,
le script est plus flexible car vous pouvez réellement enregistrer le script, le partager et l' exécuter sur une autre machine à volonté. Alors que celui-ci vous devez être sur cette machine à particules dans cette base de données de particules , le remplissage il sera. Donc c'est plus manuel pour moi, le script est plus automatisé parce que je peux toujours modifier cela et partager. C' est donc tout ce que vous insérez tous les deux des données dans vos tables de données. En utilisant l'éditeur, vous pouvez aller de l'avant et insérer plus d'enregistrements sur. Vous pouvez expérimenter avec l'insertion d'autres rapports dans les forces de
14. Mise à jour des données dans la table avec les scripts SQL: Hé, les gars, dans cette vidéo, on va voir comment on va changer les données qui existent déjà maintenant. Les premières conférences que nous aimerions mettre à jour toutes les dates d'inscription qui sont actuellement et c'est un lit d'essai parfait pour un droit ou un premier hors, c'est tous les jours. Donc, notre mot-clé pour mettre à jour notre dossier ou modifier un rapport est littéralement le mot mis à
jour avant tout autre chose, nous devons nous assurer que nous sommes dans la table de base de données CART. Donc, nous allons juste changer ça de master à l'école pour nous assurer que lorsque nous exécutons cette
commande opiacée , il regarde réellement la bonne table dans le panier bêta abeilles. Donc, une fois de plus ou mot clé ici est opiacés, et ensuite nous spécifions la table. Dans ce cas, nous voulons modifier les dates d'inscription, et nous savons que nous avons des dates d'inscription dans notre table des étudiants, donc nous devons spécifier les étudiants sur. Ensuite, le mot-clé suivant est défini après défini. Nous spécifions la ou les colonnes sur la valeur que nous aimerions mettre dans chaque colonne. Donc, nous avons mis à jour les étudiants de table définis sur la colonne que nous aimerions mettre à jour son inscription c'est, nous spécifions cela, et ensuite nous spécifions la valeur que nous aimerions qu'il soit. Donc, nous tenons à préciser que toutes les dates d'inscription qui Arnold obtenir mis à jour toe 2019-5 bash 01 Maintenant, comme un résumé rapide, nous pouvons juste jeter un coup d'oeil à notre table et nous voyons que nous avons un certain nombre pas de rapports. Donc, à la fin de cela, seuls les enregistrements qui ne sont pas devraient être mis à jour, ce qui signifie que nous devrions toujours voir ces valeurs sur changé. Non, nous avons besoin d'une condition. C' est ce qui spécifie quelles règles seront affectées. Donc ou condition est où dans l'inscription DEET est vide. Notre savoir. Donc nous voyons ici que nous avons sept dossiers qui devraient être affectés par cette inquiétude. Nous devons donc ajouter une condition en utilisant ou étaient des instructions. Il suffit de penser pour plus. Sélectionnez, et puis nous verrons le deitz d'inscription de colonne sur parce que nous avons affaire à Non, vous voudriez probablement écrire égal à non sur ce ne serait pas jeter dans arable. Ce qu'il ferait est de ramener des zéros affectés, parce que quand nous vérifions pour savoir, nous devons dire est non sur le revers, vous diriez, n'
est pas un sens. Vous voulez une colonne qui n'est pas actuellement vide ? Donc c'est une de ces petites montres qui pourraient apparaître pendant votre expérimentation si vous n'avez pas rencontré avant. Non. Vous savez, si vous avez avant Non. Ici, vous avez une solution. Donc, nous disons où cette colonne est Non. Nous voulons mettre à jour la même colonne avec cette valeur, puis nous pouvons continuer à exécuter cela, et ensuite nous verrons les sept règles ont été affectées. Donc, nous revenons à notre instruction select et nous l'exécutons juste une fois de plus pour voir les orbites. Nous voyons qu'il n'y a plus d'enregistrement nul ou aucune date d'inscription dans notre table des étudiants. Et c'est nos premières déclarations de mise à jour. Très bien, donc la première tâche est terminée sur la tâche suivante nous demanderait de mettre à jour toutes les dates d'inscription. Et puis j'ai laissé un petit avertissement ici que nous serions sur les 18 dossiers multiples et que vous devriez faire attention. Et je vais vous expliquer pourquoi. Je sais que nous pouvons répliquer cette cour et je vais juste re taper C'est hors dates, les étudiants fixent des dates d'inscription, ce qui est la colonne sur laquelle nous avons dit que nous allons se calmer. Nous allons définir toutes les inscriptions. C' est une valeur spécifique. Alors 2019, Essayons 06-0 orchestré 10 Donc, nous battons tous les records étudiants pour voir que tout le monde dans cette table, comme au moment de la course de la place, était inscrit le 10 juin 2090. La raison pour laquelle j'ai dit, Soyez prudent est que nous n'avons aucune condition sur cette déclaration, qui signifie que cette déclaration sera exécutée contre chaque enregistrement sur je peux
vous dire que si vous avez mal tapé ou si vous faites une erreur et nous sommes tous humain, mais vous pouvez faire une erreur et écrire ceci sur vous vouliez pour rose spécifique et vous laissez hors de la condition. Ensuite, cela sera exécuté sur chaque enregistrement, ce qui peut ne pas nécessairement être souhaitable. C' est donc un administrateur de base de données ou un développeur. Vous voulez être très prudent et délibéré lorsque vous exécutez l'Europe les déclarations et assurez-vous que la déclaration, si elle n'a pas une condition, il est parfaitement bien sur si vous seulement une rose spécifique vous assurez-vous que vous mettez sur votre état. Donc, pour cet exemple, nous voulons Toby. Tout le monde l'inscrit au 10 juin, donc nous allons juste faire cette exécution et nous voyons que nous avons 11 rose affectés. Donc, si nous revenons en arrière et regardons les mises à jour, alors nous verrons que tout le monde sait qu'il y a le 10 juin au cours de leur inscription. C' était là nos résultats souhaités. Encore une fois, si vous voulez un hors de la rose spécifique, vous assurez-vous d'inclure votre état sur DNO. Sur notre dernière tâche pour la vidéo d'aujourd'hui sera de mettre à jour les étudiants avec ID 7 sur 11 maintenant, Au début de ce cours, quand nous avons créé nos tables, J'aurais dit plusieurs fois que chaque enregistrement devrait être identifiable de façon unique sur ce qui rend chaque enregistrement unique identifiable est ce que je vois qui est donné. Donc, nous avons implémenté une colonne d'implémentation automatique I D de sorte que chaque fois qu'un enregistrement entre, même si toutes les autres informations sont les mêmes, ce numéro I d ou notre valeur serait différent sur DSO. Cela va nous beaucoup la cible spécifique. Tout enregistrement dans notre base de données indépendamment des horloges dans les autres Hollows. Donc, dans cette situation, nous voulons faire une mise à jour. Les noms des étudiants. Sept. Andi 11. Donc si vous ne voulez pas les identifier par leur nom, parce qu'ils ont peut-être le même nom. C' est difficile quand vous avez des étudiants avec le même nom que vous êtes à une perte pour laquelle on devrait spécifiquement descendre mordu. Donc, en utilisant la colonne over idee, nous pouvons savoir que même si nous avons des étudiants et que nous avons des étudiants, un est sept sur un est 11, donc je peux cibler sept et apporter un changement, et je peux cibler 11 et faire un changement. Alors exécutons ceux sur. Une autre chose que nous allons faire est de changer leur prénom et leur nom de famille. Donc, nous allons explorer comment vous allez faire un peu vers plusieurs colonnes en utilisant une
instruction opiacés . Donc, nous dirions des étudiants opiacés ou de table, et nous voulons définir le prénom être égal au nom de famille G Andi pour être égal à marquer leurs marques. Donc ici nous avons deux colonnes sur les piles de valeur. Nous avons la première colonne sur la valeur que nous sommes assis et la deuxième colonne sur la folie qui étaient assis de sorte que autant de colonnes que vous avez besoin pour faire une nécrologie peuvent découvrir
les séparer et les changer le long. Faites-vous tout cela jusqu'à ce que vous arriviez à votre état, qui est là où dans cette situation nous voulons mettre à jour les étudiants où le I D est égal à sept sur une fois de plus. Rappelez-vous, cette idée est un problème de nombre, donc la valeur ne serait pas garçonné entre guillemets parce que c'est juste un nombre. Donc, si vous avez affaire à un virus, sont environ, pneu ou char quoi que ce soit avec des mots sont des caractères alphanumériques. Ensuite, vous utiliseriez leurs guillemets simples. Mais alors, lorsque vous traitez d'une colonne qui n'est pas un type de données basé sur le texte, vous n'avez pas besoin de vos guillemets. Donc, quand nous exécutons ceci, l'attente est que l'étudiant avec le I dévaluer étant sept va se changer va changer le prénom sur le nom de famille changé. Donc, nous sommes juste exécuter et nous voyons que nous avions Juan dro affecté afin que nous puissions revenir en arrière et juste re exécuter ou sélectionner sur Jetez un oeil à l'étudiant I D sept de Savoir cet étudiant à tester quand nous exécutons, nous voyons que les étudiants sept est pas T. J. McDermott comme prévu. Donc, nous pouvons tout simplement aller de l'avant et faire la même chose pour les prochains étudiants qui voudraient sortir dates, c'
est-à-dire les étudiants 11. Et nous changeons ces étudiants. Donc, Roddy Sean Donc quand nous exécuterons ça, alors nous devrions voir des étudiants avec I numéro 11 se mettre à jour dans le système. L' un d'eux a été affecté et nous regardons à nouveau. C' était l'étudiant six meilleurs six. Quand nous exécutons à nouveau, nous voyons que nous savons que nous avons l'aube, Roddy. Donc, c'est comme ça que vous crédule faire une mise à jour via script. Vous pouvez faire défiler vers le haut de ce fichier qui est inclus dans les notes de cette leçon sur Je vous ai donné d'autres noms que vous pourriez utiliser la mise à jour de vos dossiers étudiants juste pour
vous donner un peu de pratique sur. Vous pouvez également jouer avec la mise à jour d'autres valeurs de données et la définition d'autres conditions qui spécifieraient quels enregistrements sont mis à jour
15. Mise à jour des données dans le tableau avec la gestion Studio: Hey, les gars, dans cette vidéo, nous allons regarder comment vous allez abaisser les enregistrements ou apporter des modifications aux enregistrements existants en utilisant les outils que le studio de gestion vous a donnés. Donc, nous l'avions regardé dans une vidéo précédente, et nous avons regardé à insérer des rapports sur nous étions allés à la table que nous voudrions et faites un
clic droit dessus. Et puis nous avons dit, Edit top 200 rose sur qui en fait nous montre littéralement l'édition ou mettre à jour ces données. Donc, ce faisant, nous avons obtenu ce formulaire vissé hors des données sur De cette vue, nous pouvons réellement modifier la carrière qui nous donne ces données ici en cliquant sur ce SQL donc s européen. Il peut être dans une position différente en fonction de votre écran et de votre résolution, mais vous pouvez juste le chercher juste là dessus vous montrerait le Corey réel qui est en cours d'exécution. Donc, si vous voulez plus, Rose aurait vu ou sélectionné des instructions que vous pouvez voir top 200 ou top 1000 ou vous pouvez le changer à ce que vous voulez par défaut. Ça nous donne le top 200 de cette avidité. En fait, je nous laisse entrer et faire un changement comme bon nous semble, afin que nous puissions insérer un neuro ou nous pouvons modifier une règle existante pour que je puisse changer cela. Les étudiants 11 orteils. Le nom va brûler sur celui-ci pour Troy. Ensuite, nous avons appuyé. Entrez sur Ce changement est fait sur ce pour que vous alliez sortir de la rencontre. Évidemment, si vous mettez une valeur non valide, alors ces orbites ne passeraient pas et l'éditeur vous donnerait un message d'erreur. Et ici, vous voyez que ce message aérien est apparu disant que la valeur un n'est pas une valeur valide ou le type de colonne que nous utilisons, qui est le jour. Il ne commettrait pas ce changement jusqu'à ce qu'il obtient une valeur légitime, comprendre, pour entrer à nouveau la date de naissance et appuyer sur Entrée. Et voilà. Il a été mis à jour. Donc, c'est ce que vous allez une mise à jour de bateau en utilisant la suite Management server studio
16. Suppression des enregistrements avec les scripts SQL: dans cette vidéo, nous allons voir comment nous allons supprimer les données de notre table de base de données. Nous avons donc trois jeûnes. Ancienne ligne. Nous voulons croire qu'un étudiant avec le I d. Value un sur ce sera notre première activité pour cette vidéo. Donc, le mot clé utilisé pour une instruction delete est littéralement qui a vraiment fonctionné. Nous disons à partir de nos étudiants de table alors nous devons, tout comme avec notre mise à jour et tout comme avec notre sélection dans certains cas spécifier les conditions sur lesquelles quelque chose devrait être supprimé dans ce cas sont condition. C' est les étudiants ? La valeur i d doit être supprimée. Alors, utilisez nos vêtements. Nous spécifions la colonne. la Surlavaleur que nous recherchons. Donc, nous voulons croire à partir de notre table d'étudiants où toute valeur i d est égale à un, puis considérer et je vais juste aller de l'avant et sélectionner le top 1000 à nouveau, considérant que notre colonne I d est notre identité unique. Pour tous les étudiants, cela signifie que seul l'enregistrement avec un dans l'espace pour la colonne I. D. sera le leader aucun autre enregistrement ne sera touché lorsque nous chercherons l'enregistrement avec la
valeur I d. étant un. Donc, nous allons de l'avant et exécutons cette demande et nous verrons qu'une route est affectée. Et si nous actualisons nos déclarations de sorte que, nous voyons que nous n'avons plus un étudiant avec la valeur I D veulent sur de la même manière. Si j'essaie d'exécuter cela à nouveau, alors nous devrions voir des zéros affectés car il n'y a pas d'enregistrement avec la valeur idee étant un suivant . On veut enlever les étudiants du nom de J. McDermott. Donc, nous allons dire, supprime de ou les étudiants de table où et dans cette situation, nous allons devoir utiliser un vêtement
plus avancé ici,
Donc, nous voulons nous assurer que nous allons obtenir l'étudiant avec le nom complet. C' est toujours risqué parce que vous auriez pu avoir trop délicat mes chers montants dans votre système. Et si vous utilisez cette méthode que partout où le prénom est stodgy sur le nom est mon Dermot, vous supprimerez tous ces rapports. Il ne serait pas en mesure de distinguer exactement lequel vous voudriez. C' est pourquoi l'utilisation de la
valeur i. d. sur la
colonne I. D. D.est le moyen le plus sûr de savoir quel enregistrement vous ciblez spécifiquement. Cependant, par
exemple, nous allons aller de l'avant et dire que le prénom est égal à et notre valeur pour G
Andi littéralement parce que non, nous voyons la condition dépend de cela étant vrai, Andi, Le nom de famille est égal à McDermott. Donc, ici, nous voyons où nous pouvons avoir plus d'une partie d'une condition, une condition qui ne se limite pas à une colonne sur une valeur que nous pouvons avoir sur. Et vous pouvez aussi en avoir quatre ou dirait, si le prénom est égal pour le toucher et je le veux ou si vous ne trouvez pas celui-ci et vous trouvez quelque chose avec le nom de famille égal, mon Fairmont et moi allons également le prendre. Vous pouvez expérimenter avec. Il y avait des clauses et des conditions de motivation. Je suggère que vous commenciez à expérimenter ceux qui figurent sur vos déclarations choisies
plutôt que sur les déclarations de besoins, mais pour non, nous voulons tous les étudiants qui ont le prénom, l'énergie sur le nom de famille étant McDermott. Donc si nous avons une étudiante avec TJ et lisons alors Taji ne serait pas vraiment leader parce que son nom est Docteur G. Andi, mon Dermot. Donc, nous pouvons exécuter ceci et nous verrons que nous en avons un sont affectés parce qu'il est allé dans l' ensemble de
données et chercher le prénom à J sur le nom de famille Dermot, qui était Heidi Numéro sept. Si nous exécutons à nouveau, nous voyons qu'elle ne l'est plus. Il note également qu'il n'y a aucun moyen de récupérer les enregistrements supprimés. Il sera très prudent et délibéré lors de la suppression des enregistrements. Il n'y a pas de corbeille que vous pouvez simplement retourner et récupérer. Et enfin, nous voulions manger tous les étudiants avec des noms contenant le mot étudiants. Donc, nous allons juste écrire et mère la commande supprimer des étudiants où à ce moment ou condition devra utiliser l'utilisation d'un joker. Parce que nous avons dit avec des noms contenant le mot étudiants, ce qui signifie étudiant étudiant, un étudiant, six étudiants de test, tous ces éléments devraient être pris en considération. Donc, dites supprimer des étudiants où et nous pouvons dire prénom comme, ce que nous savons est notre expression de joker et ensuite nous sauvegardons les modèles. Étudiants sur modèle ISS. Encore une fois. Ça va voir. Recherchez tous les élèves dont le prénom contient le mot « étudiants ». Je me fiche de ce qui vient avant le mot étudiants et je me fiche de ce qui vient après le mot étudiant. Mais on a dit le nom. Nous n'avons pas précisé s'il s'agit d'un prénom ou d'un nom de famille. Donc, dans ce cas, à travers cela, suivez les instructions sur nous a dit nom. Nous devons donc dire le prénom ou le nom de famille comme les étudiants. Donc ce que cela va faire est de dire, supprimer tous les étudiants que mon tubal prénom contenant le mot étudiants ou mon
nom de famille tubale contenant le mot étudiant. Donc, quand nous exécutons ceci, l'attente est que chaque enregistrement que nous avons qui selon qui a le mot étudiants dedans sera effacé. Nous pouvons aller de l'avant et le faire, et nous voyons que quatre règles ont été affectées. Donc, lorsque nous exécutons, vous devriez voir 1234 être supprimé de ou les résultats sur. On y va. On n'est pas 05 étudiants. Et prendre note du fait que la colonne d'idée, il ne se réévalue pas et se rappelle et dire, Oh, ce n'est personne, et c'est aussi. Et cette histoire, quelle que soit la volée qui a été assignée au moment de la création, sera là à l'avenir. C' est la fin de cette vidéo. Encore une fois, nous avons traversé quelques déclarations pour supprimer certaines données sur vous pouvez aller de l'avant et expérimenter avec différentes conditions sur Soyez très prudent, parce que si vous voyez les pistes des étudiants avec la condition extérieure, cela supprimera réellement chaque enregistrement de votre table, alors soyez très délibéré et très prudent lors de l'exécution de ces commandes.
17. Suppression des enregistrements avec la gestion Studio: vous continuez à partir de notre dernière vidéo où nous avons fait quelques commandes pour laisser des enregistrements, nous allons voir comment nous pouvons faire les principaux enregistrements en utilisant l'éditeur lui-même. Donc, si nous faisons un clic droit sur notre table une fois de plus, allez à éditer stop 200 règles De cette vue, vous pouvez réellement sélectionner le brut que vous souhaitez supprimer sur l'aller de l'avant sur le
clic droit et appuyez sur les commandes appuyez sur supprimer sur vos gens afin que nous puissions allez bouger. Tu n'as pas le numéro 11. Nous préférons juste supprimer sur. Au moins ici, il va demander. Êtes-vous sûr de vouloir supprimer ces règles afin que vous puissiez détruire deviner et ensuite il fera le script en arrière-plan. Andrea, juste séparer un script est une belle façon automatisée effet orteil plusieurs changements plusieurs fois. Mais en écrivant une fois, Cependant, si vous utilisez l'éditeur et vous aviez une rose 1,000,000, il serait un peu plus difficile de peigner à travers ces règles pour trouver ceux que vous
voulez supprimer. Ou vous pouvez en fait cela modifier l'instruction SQL pour trouver les règles exactes que vous
voulez supprimer, puis vous pouvez simplement les glisser tous et appuyer sur Supprimer. C' est une question de savoir laquelle est plus efficace pour vous. Vous vous souvenez que les scripts sont effectivement assurables, donc si vous le faites sur votre machine, vous pouvez partager avec quelqu'un d'autre qui peut avoir le même problème ou le même besoin que vous le faites avec leur époque.
18. Quels sont les relions, les clés étrangères et la normalisation: Hé, les gars, félicitations pour avoir fait aussi loin. Non, nous passons à une nouvelle partie des bases de données sur cet aspect de la conception et le développement de l'Italie, généralement les gens EXP expriment un peu l'anxiété de Langston vers la compréhension et complètement avions tante d'être peur. Il faut un peu de compréhension et de pratique pour rassembler les concepts qui sont nécessaires pour qu'il soit compétent. Donc, cette partie de la conception de la base de données a à voir avec les relations et les clés étrangères. Et les plus gros éléphants qui sont toujours dans la pièce lorsque ce sujet est discuté est la normalisation. Maintenant, laissez-moi commencer par les relations. Les relations sont essentiellement ce que le mot signifie. Ils parlent. batteur entier est lié maintenant. Nous avons commencé le cours en voyant que nous utilisons SQL Server, qui est un moteur de gestion de bases de données relationnelles ou des bases de données relationnelles. Polski Rescue de mon école. Il y en a quelques autres sur les marchés qui sont également relationnels sur. Il y en a qui ne sont pas des bases de données relationnelles. Ils s'épanouissent sur leur capacité à avoir libéré des navires fils. Andi, je continue de voir ces relations, alors laisse-moi t'expliquer. Les relations parlent essentiellement d'attente. La Dita s'appuie l'une sur l'autre. Par exemple, si vous regardez sur mon écran, vous voyez que j'ai ce que nous appelons un diagramme de base de données ou un diagramme de relation d'entité, qui montre des entités dans les tables dans les entités hors du formulaire. Donc, une table une fois de plus est la collection de différentes entités de sorte qu' en termes de base de données, la table entière est appelée un feu d'entité. Et donc c'est une petite nièce sur laquelle je travaillais dehors de ce cours, mais je parle juste de ça. Nous avons donc une plus grande image de la base de données complète et
entièrement relationnelle, entièrement normalisée sur. Donc, vous voyez que chaque entité ou table avec toutes ses couleurs directement sur. Ensuite, vous voyez qu'il ya quelque chose ici le connecter à une autre table de sorte que vous pouvez voir classements est connecté quelque part en quelque sorte, à l'utilisateur des prédictions stables est connecté à l'utilisateur. Pourtant, et donc cette représentation visuelle hors relations peut nous aider encore, vous savez, conceptualiser quel but une relation sert eso, vous savez, pas montrer. Il est littéralement de voir que les entités sont connectées les unes aux autres. D' accord. Ils partageaient le fait qu'ils partageaient une certaine dépendance. Tu ne peux pas en avoir avec tous les autres arts. C' est très difficile d'avoir l'un sans l'autre. C' est ce que signifie cette connexion afin que nous puissions avoir un utilisateur sur. Si vous remarquez que la clé va toujours dans une direction. Droit ? Donc, il va de ce classement sur les touches pointant vers les utilisateurs, qui signifie que vous ne pouvez pas avoir une entité de classement sans une représentation hors de l'utilisateur. Vous ne pouvez pas avoir une prédiction dans le système sans une représentation d'un utilisateur sur le même pour beaucoup. Donc, cette base de données était en cours de développement orteil être le mécanisme de stockage pour ah, travail hors application de prédiction. D' accord, oui. J' en ai construit un dans le passé,
Andi, Andi, pour que les gens puissent se connecter à des prévisions plus longues. Donc, bien sûr, quand ils prédisent plus longtemps, ils ont besoin d'indiquer quelle est la quantité qu'ils allaient être prédire en faisant une prédiction sur. Et donc ils ont dû choisir le tout droit sur. Ensuite, nous devrions savoir qui fait cette prédiction. Donc, bien sûr, j'ai dû garder un enregistrement de l'utilisateur sur dso. Cela m'amène à la deuxième partie des relations qui s'appelle les clés étrangères. Andi sur. Tout cela est très haut niveau, donc hors cours sera entrer dans plus de détails au fur et à mesure que nous allons le long. Mais je vous donne juste une représentation de haut niveau en dehors des relations et pour les NT. Donc, une clé étrangère est essentiellement juste les données de bits que vous avez besoin d'aide orteil. Vous identifiez l'entité liée sur C'est tout espagnol qui a fait un spectacle vous en
termes pratiques , et ensuite nous pouvons revoir cette explication. Alors restons sur notre prédiction Steel. Nous avons donc une prédiction. Nous savons tous qu'une fois que nous créons une table et que nous créons une entité, nous avons besoin d'une clé primaire. Et donc cela est représenté ici par ceci est la clé m eux sur. Nous serions allés à créer des tables et des clés primaires assis et toutes ces choses afin que cela ne
devrait pas avant. Ensuite, nous avons un tas de propriétés que nous savons que nous mettons sur, et cela n'affiche pas le type de données, qui est vraiment le matériau dans ce contexte dans ce monde. Donc nous avons un i. d. pour la prédiction sur, nous savons si c'est une prédiction active, sais-tu si ça devrait être Continental ? Les nombreux. Tout commentaire qui était ce joker, Juste une autre propriété qui était là. Et s'ils passent tout le système pour vous de comprendre cela, mais ce n'est pas vraiment important sur. Alors tu vois quelque chose ? Je vais bien, Andi, si vous remarquez bien, n'est pas toujours comme ça, donc je ne veux pas que vous fassiez forcément, c'est une règle empirique. Mais parfois, vous voyez effectivement cette connexion provenant directement de la
clé primaire . Notre clé étrangère. Plutôt. Donc, dans cette situation, n'
est pas le cas. Donc ce n'est pas vraiment quelque chose à faire. Mais vous voyez que nous avons beaucoup d'idées et beaucoup je d est la représentation hors beaucoup de notre autre table. Donc, en d'autres termes, il serait difficile pour nous d'avoir une prédiction sur. En fait, nous expliquons beaucoup parce que nous sommes en train de créer le bien est ici. En fait, nous avons créé le calendrier pour tout ce qui va se produire. J' ai rangé ça dans une table. Ce serait un orteil stupide et redondant. Continuez à répéter tous les détails de la Donc, vous savez sur quel point la prédiction est créée. , c' Ce qu'on a
fait, c'était d'avoir une table à quatre allumettes. Alors ce que nous faisons est chacun un je suis sur. Ensuite, chaque fois qu'une prédiction est faite, nous avons juste référencé le I d off le beaucoup qui est en cours de prédire IQ. Ok, alors laisse-moi le répéter. Nous avons une table uniquement pour une entité. Il n'a pas de dépendances que beaucoup peuvent exister sans rien avoir d'autre. Eh bien, dans ce cas sont beaucoup besoin de notre groupe. Donc, vous voyez que beaucoup doit encore être associé à leur groupe sur. Ensuite, le bien peut exister sans prédiction. Donc, la table beaucoup a toutes les marches sur, alors une prédiction ne peut exister que si la quantité est associée à elle. C' est donc ce genre d'association. Vous avez toujours la carte des orteils sur ce leader battu peut exister sans aucune autre donnée sur. Ensuite, déterminez quoi d'autre ce qui a besoin de ces données pré-existantes pour survivre réellement. Donc, laissez-moi utiliser l'utilisateur stable puisque celui-ci n'a absolument aucune dépendance est donc je l'utilisateur est-il que l'utilisateur existe, n' est-ce pas ? Je peux créer un utilisateur demain. Je n'ai besoin de rien d'autre. Dans ce cas, je n'ai pas besoin de sexe ou quoi que ce soit, donc j'ai juste un utilisateur qui a soit son actif. La divinité a été créée ici. Elle a été créée sur certaines informations de contact, mais c'est tout ce dont j'ai besoin sur un utilisateur. Cependant, pour faire une prédiction, je dois voir quels utilisateurs font cette prédiction, donc je peux. Ce serait stupide de me créer une prédiction et d'écrire sur le prénom de la personne,
le nom famille sur. Utilisez le nom à chaque fois ou juste l'utiliser,
parce que alors je métallise une erreur d'orthographe ici sur le nom d'utilisateur est quelque chose ici sur , puis essayer trop de les revenir. Ça va causer des problèmes. Et quand nous entrons dans des frontières plus avancées avec énergize et ainsi de suite, vous comprenez ce que je dis. Mais ce que nous faisons, c'est que nous savons que le I d est toujours des idées absolues, toujours uniques. Nous voulons donc référencer ces points de données uniques pour nous assurer que nous savons toujours qui
fait une prédiction. Donc, nous créons une prédiction stable sur. Nous donnons à la prédiction toutes ses propriétés dont elle a besoin, mais alors nous disons ok pour qui fait la prédiction. Nous voulons juste référencer cette personne par I d. Donc cet utilisateur que j'entends beaucoup est la valeur de clé primaire ici. Donc, si l'utilisateur est un ici que les attentes que lorsque l'utilisateur fait une prédiction, tout cela est rempli sur l'un serait la valeur ici quand l'utilisateur 10 minutes une prédiction, tout le reste est rempli le jour 10 est le valeur ici. Donc, si vous regardez qui a fait la prédiction sont nous voyons utilisateur i d 10 Je peux revenir à mon
acier utilisateur et je vois 10 et je vois oh, guerre de
voyage Williams a créé cette prédiction. C' est donc la pertinence d'une clé étrangère. Les tribunaux clés étrangers ne sont pas tous décalés de la répétition sur les tables, Onda vous réduit à avoir un point de référence unique entre deux tables sur les données
qui doivent être partagées entre elles. Très bien, donc c'est l'exemple avec les prédictions et les utilisateurs. Donc, de la même manière avec beaucoup est la prédiction ne peut exister que sur beaucoup tellement au lieu de voir oh, où étaient faire une prédiction sur l'équipe un et l'équipe deux, puis quelqu'un vient et fait la même prédiction sur l'équipe un et orteil de l'équipe. Tu étais encore Pete pour cette entrée ? Ensuite, nous disons que cette prédiction existe sur beaucoup I e cinq. Si nous allons avec notre beaucoup est stable, nous pouvons voir beaucoup I d cinq et obtenir tous les détails ici donc nous n'avons pas vraiment à répéter les détails à travers les tables sur ce principe est également appelé Normalisation, où vous regardez à répéter données sur la réduction. C' est pourquoi cette vidéo est appelée normalisation des relations sur les clés étrangères, car elles vont de pair les unes avec les autres pour réduire la redondance et la répétition à nouveau sur les tables. Donc, la seule répétition que vous devriez avoir serait nos valeurs clés étrangères. Parce que si l'utilisateur 10 minutes, 10 prédictions et que vous voyez 10 prédictions dans la base de données ayant cette répétée i d sur les détails de l'utilisateur 10 n'apparaissent qu'une seule fois, et c'est à un endroit que nous pouvons aller orteil tout droit, Onda. C' est essentiellement, en un mot, que la normalisation des clés étrangères entières sur les relations fonctionne pour le reste de cette
section sera en fait à la création de tables et à la création de relations sur DWI construire sur la base de données sur laquelle nous avons déjà commencé. Nous allons commencer à regarder dans battre plus avancé ces concepts pour
19. Créer une relation dans SQL Server: vous les gars, bienvenue dans cette vidéo, nous allons commencer à mettre plus de tableaux dans notre base de données de gestion scolaire. Pas de sortie du dernier sujet des relations, des clés étrangères sur la normalisation. Les gens voient généralement que tout. Ils ne savent pas par où commencer ou trou pour commencer. Ils savent que ce genre de choses doit être lié, mais parfois ils vont dans la mauvaise direction. Tu sais, quand je conçois une base de données, ce que j'aime faire c'est commencer par les tables que je sais sont comiques. Quand je dis que je me dis, je veux dire qu'ils n'ont pas de dépendance est et ils peuvent exister entièrement sur leur propre. Nous avons donc déjà commencé ce processus ici avec notre base de données de gestion de l'école, où nous avons dit que les cours et les étudiants savent qu'un étudiant peut exister entièrement leur propre jour. C' est l'étudiant, ça ? L' étudiant peut être là techniquement sans,bien
sûr,
parce qu'il paiera les frais de scolarité pour les frais généraux. L' étudiant peut être là techniquement sans,bien
sûr, bien
sûr, Il y a peu à venir sur le campus, mais ils peuvent ne pas suivre un cours, donc l'étudiant peut exister sans aucun orteil d'association, bien sûr,
juste
de la même façon que je peux créer une école, Andi, Je propose des cours et je n'ai pas encore d'étudiants. Donc, bien sûr, peut exister sur son tout. Et c'est ça. C' est quelque chose que vous pouvez réellement utiliser lorsque vous essayez de décider ce qui est atomique ou non . Pensez-y dans un scénario de la vie réelle, si dans la vie réelle, cet élément ou cette entité peut exister sans dépendre d'un autre. C' est
donc la première étape. Donc, lors de la conception d'une base de données, je commence toujours avec les éléments atomiques ceux qui peuvent exister par eux-mêmes. Donc on nous répond en fait. Crée environ deux tables supplémentaires pour cette section. Pour commencer ce concept, je vais aller de l'avant et utiliser l'éditeur sur. Je vais créer une autre table sur celle-ci sera pour les enseignants. Donc, nous savons tous que nous commençons toujours par une clé primaire I d peut dire que je d ou juste professeur i d celui qui dépend de votre convention de nommage sur, nous allons donner I le type sur le cours que vous allez ici. Il y a des professionnels que ce par Non. Donc vous savez que nous allons juste faire son identité sur. Nous avons également signalé la clé primaire américaine, que nous pouvons distraire Lee et dire définir la clé primaire. Donc je vais juste aller de l'avant et suivre les détails de ça. Donnez-moi un peu. D' accord, donc après ça, quelques colonnes ici je donne aux professeurs l'enregistrement de notre première chose dans mon nom de famille sur l'acte joint. Et j'ai utilisé le mauvais type de données là. Commencez à voir l'heure sur un quatre secret juste dire dates la raison ville sur. Alors ce que nous serions tentés de faire. Je pourrais tout à fait comprendre si vous avez essayé de mettre cours I d ou associer cette conférence ou professeur à un cours juste ici sur hors cours ou tolérable. Clés étrangères et clé primaire. Donc vous pensez que OK, donc clairement un professeur doit avoir un cours d'enseignement, ce qui est la peur. Mais alors un enseignant peut également enseigner de nombreux cours. C' est donc quelque chose que vous devez prendre en considération. Parce que si on met un i ici pour ça. Bien sûr que je l'ai fait. Nous associons ce dossier d'enseignant à un cours à la fois sur DSO. Si cet enseignant enseigne un autre cours tenir, nous sommes d'accord pour que nous ayons à répéter tous ces détails. Andi, asseyez-vous un autre cours qui n'est pas le moyen optimal de stocker nos données dans un paramètre de
base de données relationnelle . Très bien, donc c'est un de ces covey. C' est que les gens rencontrent là où ils essayeraient de mettre la clé étrangère au mauvais endroit. Parce que réel, finalement l'enseignant, comme je l'ai dit au début, peut exister dans mon école et ne pas enseigner parce que peut-être comme un gel, Mr Peut-être est un spécialiste. Je ne sais pas, mais je peux avoir un prof. Je peux embaucher un professeur parce que je n'ai pas d'étudiants. J' offre des cours, mais je n'ai pas d'étudiants que ce professeur n'enseigne pas activement un cours. Donc, je vais quitter la table des profs à cette sauvegarde Andi ici. Donc non, nous avons trois équipes comme inter school et rafraichir. J' ai trois tables à mes cours de mes élèves et mes professeurs une fois de plus, ils sont tous atomiques. Donc vous dites probablement Ok, alors tenez y Vraiment c'est l'orteil du prof. Bien sûr. Non, explorons encore une fois dans la vraie vie, j'ai une école, non ? Non, j'ai un cours. Quand j'ai créé cette force de base de données, le cours était là. Euh, oui, j'étais prof, mais je n'avais pas d'étudiants. Ce que vous avez fait était de vous inscrire à ce cours sur la plate-forme sur laquelle vous apprenez ce cours, puis de me dire que je voyage Williams, le professeur ? Oui. Il sera associé à ce cours parce que j'ai beaucoup de cours sur cette plateforme. Andi, vous l'étudiant sera associé à ce cours avec ce professeur sur. Je suis sûr que vous travaillez. Plusieurs cours sur cette plateforme sur DSO. Ce genre de relation relationnelle doit exister entre les cours. L' étudiant sur l'enseignant afin de mettre un étranger, Kian quelqu'un hors de ces tables ne serait pas entièrement accommoder ce genre de
relation en trois parties . Parce qu'à un moment donné, quelque chose devra se répéter dans ces trois tableaux, avec des détails répartis partout sur ce que nous voulons réduire est un étalage détails à plusieurs endroits. Donc, quand nous voyons cette situation, nous essayons d'associer deux tables les unes aux autres mènera un peu de duplication détails. À long terme, ce que nous faisons, c'est d'avoir une autre table qui va faciliter ces relations. Très bien, donc ce que je vais faire est de créer une nouvelle table appelée « Inscriptions ». Je vais juste dire que je vous ai mis la clé primaire. On le fait à l'entité. D' accord, donc c'est aussi la mise en œuvre d'Andi. Puis je vais orteil ont encore une fois laissez-moi juste dire cette table de Non. Donc, vous savez, nous travaillons avec ce sont les inscriptions donc sur l'inscription ne peut exister que si nous avons un professeur avec le cours avec au moins un étudiant. Ensuite, nous avons une inscription de l'étudiant est inscrit dans une classe enseignée par cet enseignant, non ? Donc, nous créons enseignant I d. Donc c'est la personne enseignant, et c'est enseignant i d. Donc, il doit être un entier ne sont pas au moins basés sur notre conception. Jusqu' à présent, nous avons des étudiants, je d parce que le professeur enseigne ces étudiants et je vais juste garder mai en utilisant la consistance . Et puis nous avons le cours dans lequel ce professeur et les étudiants vont tous les deux participer. D' accord, c'est le début. Et j'ai reçu ça rapidement pour qu'il puisse être arrêté. Détesté que c'est le début de la création d'une clé étrangère. Maintenant, il y a une autre étape qui doit se produire, donc non, nous devons réellement avoir la relation. Donc, oui, nous avons créé les propriétés de clé étrangère, mais ce ne sont pas encore des clés étrangères parce que nous devons réellement établir la relation entre cela sur la table des enseignants à l'époque. C' est ce qui nous donnera ce que nous appelons. Ce sera l'intégrité quand vous savez que la relation sur les constantes est là. Une fois de constante est là alors enseignant je ne peux jamais, jamais avoir une valeur qui n'est pas présent dans la table des enseignants. Si j'ai cinq enseignants sur leurs idées de numéro un à cinq, alors enseignant je ne peux jamais, jamais obtenir une valeur de 10. Donc, dans l'état actuel, cela peut arriver parce qu'il n'y a pas de contraintes. n'y a pas de relation réelle. C' est juste qu'il faut dire, Oh, c'est le
prof . Je devrais y aller, mais une fois que j'ai créé cette relation, on a mis en place la contrainte. Nous avons discuté des contraintes dans notre conception que c'est une limitation à ce qui peut réellement se produire dans ce problème. Sur ce que nous allons savoir est en fait juste. Cliquez sur le 1er 1 qui est enseigner i d. Et puis vous voyez qu'ils ont une relation d'option qui fait apparaître une boîte de dialogue, ce qui nous permet l'annonce. D' accord, alors ça crée quelque chose générique et vous voyez des inscriptions en romance. Ce n'est pas vraiment ce qu'on veut. Donc, le nom de la clé étrangère ici indique généralement les tables qui sont liées les unes aux autres. Donc, nous voulons que ses inscriptions soient des profs apparentés. Donc, nous allons cliquer sur celui-ci. Ensuite, nous allons de ce côté et déposez les tableaux sur les spécifications communes. On peut parler le bouton représentant des points de suspension ici alors qui fait apparaître un autre la boîte jaune, qui réitère notre nom sur celui qui est ici pour moi parce que je l'avais commencé avant. C' est ce à quoi ressemblerait les années, et c'est bien à ce moment-là. Ce que nous voulons dire est, Quelle est la table de clé primaire ? Non. Est-ce que nous sommes un appel ou une clé primaire pour un professeur ? I D est stocké dans notre table d'enseignant, donc notre clé primaire vient de ou table d'enseignant sur la colonne qui a cette clé primaire est notre colonne I D voir ça ? Donc quand je l'ai changé, le professeur m'a donné le menu déroulant sur Di Select I D. Andi. Je veux que le I d. de l'enseignant de la table des enseignants soit directement associé ID avec quelle colonne dans l' inscription. Donc c'est déjà qu'il est vert note la pointe de la clé étrangère parce qu'il sait que c'est une
table de clés étrangères . Je lance cette création de relation à partir de la table de clés étrangères, donc cela va répondre à cette hypothèse, mais il ne sait pas quelles colonnes. Donc, je vais aller de l'avant, et j'ai la responsabilité de nommer mes colonnes de sorte que je puisse savoir exactement quelle est la relation. D' accord, donc il n'y a pas de stipulation directe que le professeur i d doit être nommé de cette façon. J' aurais pu dire chiots, I D. Mais ce serait une très mauvaise pratique de ma part parce que plus tard sur la ligne ou une base de données sur l'
héritage de quelqu'un , ils sauraient pourquoi les chiots sont liés aux enseignants, droit ? Donc, j'ai continué à appeler un professeur I d. Pour que si je faisais ce travail m'endormais et le regardais le lendemain, je pouvais me rappeler que l'enseignant que j'ai été désigné pour être la colonne clé étrangère de ma
relation avec l'enseignant . Donc professeur I d. Ici, dans notre tableau d'inscriptions sera directement lié à la colonne i D de ou enseignant, aussi, et puis en fait aller OK, Et puis vous voulez probablement juste être le nom ici juste pour voir les inscriptions les enseignants juste pour que si vous le regardez demain, vous savez que cette clé étrangère est entre les inscriptions et les enseignants sur. Alors tu peux les piéger, accord ? Et puis vous voyez, il a fait un changement et nous demande de voir sur puis bys quand il nous demande d'économiser,
ça nous dit que nous sommes sur le point de moi quelques changements au niveau de l'enseignant et de l'inscription. Donc ça veut dire que ça change de structure dans le remorquage. Associez l'enseignant sur les inscriptions pour que je puisse simplement cliquer. Oui, sur ce sera arrivé que ce sera accepté. Alors je vais de l'avant et je fais la même activité pour l'idée des étudiants, et je vais les faire lentement. Donc, nous avons le 1er 1 et puis nous pouvons juste aller de l'avant et ajouter, et maintenant nous allons faire les mêmes étapes ou nous allons juste choisir sur nos lèvres Spartan dans les tables
et l' espace de spécification de colonne sur Ensuite, cette fois, nous faisons étudiant I d. Donc je dis Je veux qu'une table de clé primaire soit étudiante. Puis quand je dépose ça, vous voyez toutes les colonnes des étudiants. Mais je sais que je ne m'intéresse qu'au côté de la clé étrangère. Je suis seulement intéressé par l'étudiant I. D. S. Je clique sur OK, puis celui-ci a été automatiquement connu parce que je ne l'ai pas édité. C' est donc ce qui devrait arriver. C' est ce qui est probablement arrivé pour vous et les enseignants sur ce qui devrait vraiment arriver. Donc, une fois
que vous partiez, cette relation le renommerait en conséquence. D' accord, on. Ensuite, nous avons remarqué que c'est la même étape, peu importe celle sur laquelle nous cliquons. Donc, même si nous fermons cette fin sur l'autre, nous allons toujours passer par ce style de boîte. Donc, ce que je vais faire est de rester ici sur juste aller de l'avant et ajouter une autre personne pour avoir 1/3 1 orteil. Alors je clique. Ajouter sur. Cela me donne 1/3 relation clé étrangère sur. Alors je vais penser ça et cette fois, on a affaire à bien sûr. Donc, cours sur laisser tomber donateur nous cherchons cours I d. Donc vous voyez que parfois j'ai je d parfois outverser la société si et bien sûr, est stable. J' aurais pu dire I D mais je pense que j'ai expliqué plus tôt que vous savez, c'est déroutant de le changer. C' est à vous et à votre modèle selon vos normes. Chevaux Eso, cheval I D sur l'écurie d'inscription La clé étrangère. Combien de temps est bien sûr que je d. D'accord, donc nous voyons un direct beaucoup là-bas. Donc, parfois, je n'aime pas faire cela parce qu'avoir le cours I D dans l'équipe à domicile a atterri dans la table de clés étrangères peut parfois conduire à la confusion, mais donc j'utilise habituellement idee comme colonne ID afin que nous puissions tout simplement aller de l'avant et continuer à cliquer OK, et donc nous avons Ou trois clés étrangères et
la romance, les cours, les inscriptions des étudiants et les inscriptions, les professeurs. Donc c'est tout, dire que l'inscription stable n'est pas directement liée aux cours, étudiants et aux enseignants. Donc, une fois de plus, tout
le but hors sont en train d'être. Ces relations consiste à définir les contraintes entre les valeurs qui sont chargées ici par rapport à la valeur disponible ici. La valeur n'est pas disponible ici, ce qui signifie qu'il n'y a pas de cours avec i d 10. Ensuite, l'inscription ne peut toujours pas avoir 10 dans cette colonne, car cette colonne est directement liée à la colonne I. D dans ou dans notre tableau d'apparence. D' accord, donc je vais juste aller de l'avant et dire ceci et vous voyez que cela essaie d'être des changements à toutes les tables qui ont été impliquées dans cela vraiment, depuis son processus de création. Il pourrait deviner sur vawa que nous pouvons rafraîchir les tables et voir notre table nouvellement créée là-bas sur defy, forer vers le bas et cliquer sur leurs clés. Ensuite, vous voyez que cette inscription instable a en fait quatre clés, accord, mais alors, si vous prenez la clé et faites attention à la direction de cette clé,
vous voyez que celle-ci est pointée vers la gauche, et c'est le PK. Donc ça montre que c'est la clé primaire, et puis tous les autres pointent vers la droite pour vous montrer le donjon étranger dans Sequel Express. Destro, ils n'ont pas cette capacité pour montrer le diagramme de la base de données. Vous devrez peut-être ne pas charger cela séparément, ou utiliser un développeur pour obtenir cette fausse société. Mais à la fin, hors du B, vous pouvez toujours vous assurer que ces clés sont là. Et vous savez que ceux-ci sont créés correctement. Maintenant, je vais ajouter une colonne de plus à cette table sur. Je suis allé à des parties convenues. La raison derrière cela est quand nous avons un étudiant. Vous savez ? Bien sûr qu'il a besoin d'un groupe, non ? Mais alors ils sont tous un ventre, donc je peux mettre la cupidité dans le cours parce qu'il y a beaucoup d'étudiants pendant le cours sur faire ce qui n'aurait pas de sens. Essayer de piéger convenu dans l'écurie du cheval sur l'élève fait beaucoup de cours, donc il a été pensé beaucoup de notes. Donc ça n'a pas de sens que j'essaie de mettre la cupidité sur le dossier des étudiants. Ce que je ferais, c'est de le mettre dans la section des inscriptions, où je sais que l'enseignant qui enseigne aux élèves par cette force va leur
donner un accord pour ce cours. Droit. C' est-à-dire que c'est le genre de pensée de l'employeur lors de la conception d'une base de données. Donc, une fois de plus, cette écurie d'inscription va avoir l'enseignant qui enseigne aux étudiants ? Andi. Beaucoup d'enseignants peuvent enseigner à de nombreux étudiants à tout moment sur ils peuvent leur enseigner plusieurs cours directement sur. Donc, pour chaque cas où vous avez un enseignant spécifique qui enseigne ces étudiants spécifiques dans ce cours spécifique, nous leur donnons cette cupidité spécifique. Même s'ils se répètent, nous savons que chaque disque va avoir une cupidité unique ces trois valeurs, donc je peux juste donner ce pouce. Je vais juste le savoir en char au degré avec un peu de grands du C. Permettez-moi de le voir
aussi, aussi, parce que ce pourrait être un moins quelqu'un de leur donner deux personnages à mettre dans cette note. Andare reçoivent des modifications sur cette table donc nous avons cette table de relations. Cette table est un orteil de pont beaucoup thetreet e devait être lié les uns aux autres. Il y a
dessituations où vous avez,
vous savez,
vous avez une table et vous allez mettre,
vous savez,une clé
étrangère dans cette table. des Il y a
dessituations où vous avez, vous savez, vous avez une table et vous allez mettre,
vous savez, vous savez, Donc ce n'était pas l'un de ces scénarios, donc ce n'est pas une taille unique. Vous ne regardez pas seulement une base de données relationnelle et vous dites, Oh, je vais utiliser ces techniques exactes pour construire ma propre base de données Dans ce
système de gestion scolaire , les différentes règles s'appliquent au système précédent. La base de données précédente que d'autres Sony dans la dernière vidéo, où je faisais des prédictions pour le travail avec des matchs. Très bien, donc vous devez juste comprendre les concepts de base. Onda les appliquer au fur et à mesure que vous allez. Une fois de plus, cette entité va-t-elle être atomique ou va-t-elle avoir ? La dépendance est dans cette situation. Un cours n'a pas de dépendance. Un étudiant n'a pas de dépendance à l'égard d'un enseignant n'a pas de dépendance. Tout peut exister par eux-mêmes, cependant, pour une inscription ou se produire, je ne peux avoir notre dossier sur un enseignant enseignant enseignant à nos étudiants sur ce cours par le biais l'inscription. Et donc mon inscription stable a la dépendance est sur la table des enseignants,
la table des étudiants et la table des cours. Andi. Eh bien, il a ses anciennes colonnes après, sorte que vous pouvez toujours assaut frais sur ajouter à l'inscription battu off ou date off, début, date et verrouillage sur. En effet, cela créerait en fait un cas où quelqu'un en tant qu'étudiant prenait une classe enseignée par ce professeur au début de ce M. la fin de ce genre de choses que vous pouvez toujours mettre dans ce genre de choses. Mais il en a trois. La dépendance est sur trois tables différentes. Très bien, merci d'avoir regardé. N' oubliez pas de laisser des commentaires ou de poser des questions si vous n'êtes toujours pas clair sur ce qui se
passait ici du rapide à atteindre.
20. Insérez les enregistrements dans les tableaux d'un rapport: vous les gars, mais cette vidéo va chercher à insérer des rapports dans des tables de remorquage qui ont des relations. Donc, dans les vidéos précédentes, nous aurions déjà inséré quelques rapports en été pour les tables. Et j'ai discuté des tables atomiques par rapport à celles que la dépendance temporelle est ou
les tables d'apparence par rapport aux tables enfants. C' est une autre expression que vous ici en détail basée, euh, et Fletcher Rd pour être sa terminologie. Donc nous avons des cours et nous avons créé quelqu'un. Je suis distrait dans les tables et y aller a dépassé 200 parce que non, nous sommes censés être à l'aise avec notre éditeur sur. Nous devrions être assez compétents dans cette école pour faire nos déclarations civiques si nous voulons voir ce qu'il y a. Mais pour l'opportunité, pour la vitesse, je vais juste utiliser l'éditeur pour la plupart de ces opérations. Donc nous n'avons pas mis de professeurs,
comprendre, comprendre, pour aller de l'avant et insérer environ trois enseignants, accord, donc j'ai fait trois enseignants et note que parce que j'ai utilisé la date par opposition à l'être,
il est temps que nous ne voit pas d'horodatage sur la colonne articulaire. C' est ce à quoi ressemblent les dates. Je pense que c'était la naissance battue à l'époque Stump Red Donc je vous montre juste la date
différente que c'est ce qui est encore une fois. Il se peut qu'il ne soit pas disponible dans les versions précédentes de l'exercice fiscal et dans votre société. Vous n'utilisez peut-être pas le dernier, donc je vous montre juste tous les différents scénarios. Ils peuvent faire une séparation de votre contexte. Nous avons donc trois professeurs. Nous avons quelques étudiants. Nous avons quelques cours. Savoir quoi ? Nous n'avons pas nos inscriptions. Nous n'avons aucun enseignant enseignant qui enseigne activement des étudiants à travers n'importe quel cours. C' est pour ça
qu'on a créé l'écurie d'inscription pour qu'on puisse les trouver ensemble
grâce à des relations. C' est pour ça
qu'on a créé l'écurie d'inscription pour qu'on puisse les trouver ensemble Donc, je comprends d'éditer le top 200 sur, alors vous remarquez, basé sur notre conception précédente et basé sur ce qui est à l'écran. Non, tout ce qui est une charge dans ces colonnes sont des valeurs entières. Ce ne sont que des idées. Super. Eh bien, nous avions une valeur de chaîne seule pour cela, mais ceux-ci sont seulement prêts à accepter dans vos valeurs. Donc, ce que cela signifie, c'est que lorsque nous avons une table avec des relations sur, nous avons mis en place la relation pour être sur le primaire. Les colonnes clés sur les idées ont trop de choses sur. Il y a des entiers de votre clé primaire. Votre colonne de clé étrangère est toujours juste ne pas avoir le référencement I d toe. L' enregistrement détaillé a été discuté dans la première vidéo de Siri. Encore une fois, nous ne répétons pas les détails des enseignants chaque fois qu'il y a une inscription. Parce que si John enseigne plusieurs cours et que nous n'avons pas besoin de voir John, John, John, John, John, John, John, chaque fois que vous voyez Jane, de cours recevant John à travers le droit de base de données, qui conduirait à des données manquantes. Et c'est une partie de la normalisation où nous éliminons toute cette répétition. Donc, si vous réalisez que vous êtes dans une situation où les détails de quelque chose vont être répétés plus d'une fois, alors vous devez probablement regarder à créer un autre orteil de table. Avoir ces informations détaillées une fois, et ce que vous faites est seulement de répéter ce référencement I e. à ces informations détaillées. Donc, c'est que toute cette normalisation fonctionne. Vous voyez des choses sur la première forme normale. Deuxième forme normale troisième forme normale. Pour moi, ces formes normales sont importantes quand vous regardez déjà Miss idiot et essayer de le
réparer. Mais pour moi, je saute au-delà des formes normales, et je vois juste conçu les abeilles de données dans une forme normalisée de l'un. Si vous voyez des détails répétitifs, mettez-les dans un tableau pour qu'ils n'apparaissent qu'une seule fois, puis répétez l'idée associée pour quoi que ce soit. C' est ce qu'on fait ici. Donc, au lieu de répéter les détails des enseignants parce que John va clairement enseigner les trois meilleurs cours Isham, Sq et PHP, nous voulons juste répéter son I d. les trois meilleurs cours Isham,
Sq et PHP,
nous voulons juste répéter son I d. les trois meilleurs cours Isham,
Sq et PHP,
nous voulons juste répéter son I d. associés. Le i d à avec le cours est 12 et trois vont lui donner un étudiant pour chacun. Donc Jodi McIntosh est actuellement dans les trois cours donnés par John. D' accord, sur la raison pour laquelle je fais ça, c'est le fait qu'on a des idées, des
retours, retours, insère tout Oh, je l'ai fait. Je l'ai fait seul ? Non, sur mes dessins. Donc j'ai juste sauté sur le design rapidement sur Di fait seul ? Non. Ce qui veut dire que nous n'avons pas à entrer dans toute la violence. La seule chose qui est vraiment, absolument nécessaire est le i d. pour que nous puissions le faire. Donc, en l'état actuel, nous avons donné à John avec I d toe les écoles de cours sous ces cours html sq et PHP . Et disons qu'il n'a pas d'étudiants pour le moment. Donc, nous allons associer professeur i d à Who is John avec le cours I d un que je peux appuyer, entrer et voir. Il semble que ce n'est pas des étudiants. Il enseigne aussi le cours que moi aussi. Et il enseigne aussi le cours I d 3. Non, ça a l'air stupide. Je peux comprendre ça parce que vous vous éloignez de voir qui enseigne à John Andi ici. Non, juste en regardant les outils, les trois et
les chiffres, d'accord ? Non, d'un point
de vue humain, ça peut sembler stupide parce que nous préférons voir des lettres plutôt que des chiffres. Mais le numéro du Dr Maura. Il est donc plus efficace d'obtenir ce numéro. Trouver tous les détails ailleurs qu'orteil Avoir ces détails répéter à chaque fois que cela conduira en fait à une base de données plus lente sur une application globale plus lente, parce que je pense que vous construisez votre base de données ici pour l'utiliser dans une application sur ce point numéro un point numéro deux Est-ce parce que vous utilisez votre base de données dans une application sentiment Qu'est-ce que c'est ? Les ID seraient beaucoup plus faciles du point de vue de l'application. Si vous n'êtes pas sur développeur tout de suite, c'est bon. Mais je vais juste donner un aperçu de haut niveau. Que vous rappelez-vous que lorsque vous êtes lorsque vous remplissez plus de 10 en créant ces associations, associations,
vous associeriez dynamiquement les contrôles dans votre haut avec les valeurs des I. colonnesI.
D. Et donc vous pouvez passer cela dans votre base de données assez facilement au tribunal. Vous n'auriez pas forcément besoin de venir manuellement ici et d'écrire deux et trois, un et deux, non ? Parce que nous apprenons base de données dans le contexte, hors base de données et signer. Je vous montre exactement comment ces données entrent dans la base de données. Revenons à ce qu'on fait. Nous avons en fait John associatif avec les cours 12 et 3. Donc, si je regarde cet enregistrement d'inscription, je vois John cours d'enseignement un, qui est html asi fait aussi cours d'enseignement à qui est SQL Andi. Il enseigne aussi l'arbre de force, qui est PHP Andi. Elle n'a pas donné de notes parce
que, que, franchement, il n'a pas d'étudiants, donc j'ai dit que Jodi prenait les trois cours. Donc, sachez que nous savons que Jodi s'est inscrit parce qu'elle a regardé le calendrier et a vu que John enseigne ces ou ces cours et trois offerts par John sur. Encore une fois, vous auriez pu mettre sur les détails du semestre et quoi que ce soit, quand et même le campus c'est votre base de données. Vous pouvez faire le design sur lequel aucune majorité n'est intéressée. Jodi va cliquer sur Inscrire. Elle passe donc à la gestion de l'école jusqu'au système de gestion de l'école et elle et règle dans ces trois cours, tous enseignés par John. Alors connaissez-la. I d, ce qui est trois. Obtient l'ID associé avec John pour chaque cours. C' est ce que je disais à propos de sa pétition. Imaginez si nous avions John, John, John, Jodi, Jodi, Jodi et HTML PHP sur le bureau. Vous êtes bien sur. Ce serait très fastidieux quand des ballons dans plus d'un. Et puis vous devez suivre tous les johns et tous les jodi's. On peut juste voir quels étudiants font ça avec John. Nous cherchons juste un étudiant i d trois et nous voyons tout sur l'agilité dans un seul endroit. D' accord, donc tu pourrais te faire foirer si c'est plus en multiplication. Donc nous essayons de garder ces données répétées Un, s'il vous plaît. Non. Voici un autre scénario. Patrol Oy a décidé de faire aussi bien Esti, Onda hb il ne fait pas HTML. Il ne fait que du SQL et du Ph
B. B. Maintenant, voici une beauté en utilisant nos relations, vous pouvez en fait répéter ceci. Donc nous savons que John enseigne ce cours pour que nous puissions juste mettre John deux fois et comprendre cela. Donc nous connaissons le discours de Johnny là-dedans. Et nous avons vu que l'étudiant en question patrouillerait ses idées. Six. Donc on a juste mis six sur six. Je suis désolé. se passe quelque chose ici. Laisse-moi passer. D' accord, donc nous associons Pay Troy à fait une fois de plus. Et il fait des cours un sur trois seulement. Très bien, donc ici nous voyons le professeur I d, donc nous voyons John enseigne tous ces cours et il doit aux
étudiants jusqu'à présent dans ces cours que je sais que nous pouvons suivre directement. Si nous devions retirer tous les élèves de la démo que John enseigne, nous pourrions juste regarder tout le cours I d. Un sur l'enseignant I 82, alors nous verrons toutes les idées des étudiants revenir dans cette carrière. D' accord, on finira par y entrer. On cherche juste à insérer Onda. Nous regardons ensemble nous allons bateaux tirer des rapports est-ce que je veux dire,
évidemment, nous n'utilisons que des chiffres, donc il faudra un peu plus harceler hors de l'orteil de données, en fait accomplir certaines choses. Donc je vais juste utiliser ce temps et je suis juste allé pour remplir quelques données supplémentaires que je voulais mettre dans environ 20 enregistrements sur les inscriptions sur le chemin Recone. Bon, alors j'ai dit à l'interne qu'il en avait 11. Je suis désolé. C' est un peu fastidieux et ennuyeux, et je suis sûr que tu ressens la même chose, mais je ne pense pas que tu l'aies encore fait. Ce que je comprends à cet affichage quelque chose pour vous. Alors ne rappelez-vous pas qu'en déclenchant la relation aurait imposé certaines contraintes façon ne devrait pas être en mesure de mettre dans un enseignant i d. Cela n'existe pas dans notre table d'enseignant. Donc, si dans les inscriptions j'essaie de mettre la valeur 10 sur, alors c'est un immobile du reste, puis passez à la ligne suivante. Ça me dira qu'il ne s'est rien passé. Il n'a pas été commis et les messages d'erreur qu'il était en conflit avec les
contraintes de clé étrangère , le conflit qui donc il ne vous dit pas vraiment tous. n'y a pas de valeur 10 dans la table parent, mais c'est essentiellement ce qu'elle est. Ce qui se passe. La contrainte est qu'aucune valeur d'enseignant i d ne peut exister dans notre relation dans notre colonne de
clé étrangère qui n'existe pas dans la colonne de clé primaire de la table de clé primaire. Bon, donc c'est ce que ça amène un bateau. Donc si nous répétons les détails et voyons John tout le temps, alors quelqu'un pourrait venir sur DSI. Oh, épelez son nom Kwan, parce qu'ils essaient d'être mignons ou drôle, ou quelque chose qui conduirait à une certaine intégrité
des données, parce qu'alors on se demandera. Qui est ce mot ? Ça vient de plus. Alors nous ne saurions vraiment pas qui était ce prof. Donc, en utilisant des clés étrangères et une relation où appliquer une certaine intégrité des données à travers le conseil pour s'assurer qu'aucune valeur n'entre sans qu'elle soit vérifiée par une seconde source vendue pour parler afin que je puisse voir ce petit et appuyer sur Entrée lors de l'impression entrer. Ça me dit une autre parabole que cette fois-ci. C' est avec les étudiants parce que je n'ai pas d'étudiant avec Idee, moi aussi. Ils ne l'ont pas effacée ? Donc je vais juste changer cette idée à 12 sur Douala. J' ai donc un riche mélange d'étudiants et d'enseignants, et tout cela semble déroutant à ce point. Si j'étais allé jusqu'au bout, ça aurait été encore plus confus et à juste titre. Donc je veux dire, insérer n'est pas le test Q Um, processus et procédure et même en le regardant,
ce n'est pas très intuitif avec un D. C n'est pas aussi intuitif que regarder l'enseignant et les étudiants et les cours. Ce que nous ferons ensuite, c'est d'examiner le blé entier et d'extraire des données significatives de ce tableau. Quand il ressemble à ceci
21. Run les requêtes sur les tables on (les inscriptions d'intérieur): Hey, les gars, dans cette vidéo, nous allons regarder des techniques avancées d'exploitation de carrière. Donc, oui, nous sommes passés par certains select dans les vidéos précédentes, et nous avons passé par certains filtrage et d'autres sujets plus avancés. Mais alors, quand il s'agit d'avoir plusieurs tables et le désir pur à travers les tables, nous devons employer certaines autres fonctions esque UAL Commons Andi ne sont pas pour
faciliter ce genre hors cour. Donc, je vais juste aller de l'avant et créer une nouvelle fenêtre de requête sur. Nous pouvons sélectionner notre base de données à utiliser, qui est l'école hors cours. Je dis toujours utiliser l'école ci-dessus ici dans ce groupe afin que nous puissions être absolument sûrs, même si nous emménageons, éteignez l'ordinateur qui était dans la bonne base de données. Mais alors commençons par barreling quelques sélectionner. Donc, nous sélectionnons l'étoile de l'enseignant sur. Nous avons trois t 14 avec un certain démantèlement sur un C et V responsable sur qui va effectivement dupliquer cette ligne sur je suis juste en cours d'exécution ces Désolé, que les cours scolaires sur et les étudiants d'accord, Donc si j'ai ces trois commandes et je vois exécuté exécutera effectivement les trois et donnera ces résultats différents pour chaque résultat différent. Peons allumés. Rappelez-vous que vous pouvez toujours juste mettre en évidence celui que vous voulez exécuter. Et ça vous donnera juste ça. Non, je veux courir une étoile sélectionnée de mon inscription stable sur nous avons vu la maison désordonnée et déroutante qui avait l'air Do que beaucoup Désolé un peu de ce est embarrassant. Alors exécutez alors nous voyons que nous avons tous ces chiffres et littéralement ils ne signifient rien pour nous assis et les regarder parce que tout ce que nous avons à faire est de revenir en arrière et pleuré La tendance finaliser enseignant à sur. Ensuite, nous retournons en arrière et finale à un étudiant. Trois sur ce bucking et quatre chose est vraiment juste fastidieux et absolument pas nécessaire parce que dans SQL nous avons ah construction appelée joints afin que nous puissions faire des joints dans nos carrières. Très bien, donc ce fichier de script sera inclus dans la ressource est pour cette vidéo sur. Je vais te montrer comment tu peux devenir un joint. J' ai rejoint à peu près les voit. Je veux orteil littéralement joindre les données de deux tables différentes basées sur la seule chose qu' ils ont en commun sur basée sur le père. Nous venons de passer par des relations et des clés étrangères et des clés primaires et ces contraintes . Nous pouvons toujours supposer que ce que deux tables ont en commun serait la valeur dans la clé
primaire sur la valeur dans les parties clé étrangère de la valeur dans la colonne clé étrangère pour les inscriptions est ce qui est quelque chose qu'elle a en commun avec la table enseignant accord, ou dans l'étudiant je d. avec la table d'étudiant. Très bien, donc la syntaxe d'une articulation est que vous voyez, si sélectionnez afin que la partie sélectionnée reste la même étoile à partir de maintenant. Vous pouvez choisir votre table principale et la romance. Depuis que c'est la table du rial. Nous voulons voir les détails de toutes ces inscriptions. Vous voulez voir quel professeur enseigne ce cours ? Alors son orteil prof. Nous voulons voir les détails de l'enseignant sur tous les cours que l'enseignant numéro deux enseigne, donc nous sélectionnons l'étoile parmi les inscriptions sur. Ensuite, nous disons jointure interne et vous avez plusieurs articulations. Vous voyez inter utiliser la gauche, vous voyez à droite, mais pour l'instant, faisons juste le dîner et vous verrez
sur quelle table est-ce que vous voulez joindre les données ? quelle table voulez-vous chercher les détails ? Donc, nous voulons les détails du prof. Je le serais aussi. Donc, évidemment, les détails de tout ce que je dirais seraient dans notre table d'enseignant. Alors ils disent, Professeur. Alors, nous voulons voir sur. Donc géant sur la table de l'enseignant à la condition que la colonne de la colonne de l'enseignant est I d. Rappelez-vous que ce qu'ils ont en commun est la valeur dans la
carte I. D. D.hors de la table des enseignants sur la colonne enseignant i d de l'inscription stable. Si intérieur. Rejoignez ce nouveau professeur de table à la condition que le i d de la table des enseignants et vous pouvez toujours dire quelque chose comme des points d'enseignant juste pour vous assurer que vous avez affaire à la bonne au cas où les deux d'entre eux ont le même nom. Ok, donc contre un point enseignant et toute intelligence demande, quelle colonne est-ce ? Nous avions déjà écrit que je d est égal à sur. Je peux juste voir des points d'inscription sur. Je vais voir le professeur que j'ai sur alors quoi ? Cela fera est de dire me donner tout de l'inscription. Onda a également rejoint sur les détails de la table des enseignants où le I d beaucoup est que donc il va ramener les détails. Donc orteil enseignant, où l'enseignant orteil beaucoup est l'idée et la table de l'enseignant ramènera tous les détails pour enseignant trois, où ces deux valeurs beaucoup etcetera. Donc c'est pourquoi si nous avions 10 dans l'autre pièce et stable en tant que professeur, je d. Cela causerait un problème parce que nous n'avons pas que ceux-ci ne seraient jamais beaucoup. Donc, quand je lance cette requête non, nous voyons et j'ai dit, Sélectionnez l'étoile non, nous voyons que les détails sont de retour. Donc, pour l'enseignant I D à une fois c'est l'outil dans la table des inscriptions. Ensuite, il ramène le correspondant requis pour deux où il est trois et puis romances apporter les rapports correspondants pour trois sur le même était sur et sur. Donc enseignant un enseignant, un pour que nous puissions savoir, voir quel professeur enseigne réellement ces cours. Mais nous avons plus de détails que nous devons voir parce qu'ils ne connaissent pas les idées des étudiants. Nous ne connaissons pas les cours, donc je peux entrer rejoindre autant de tables de conception pour que je puisse le savoir. Aller de l'avant une jointure interne sur Disons que nous voulons les détails de l'étudiant avec les
détails de l'enseignant sur. Ensuite, je peux dire l'étudiant i d. donc étudiant i d Il va de la table des étudiants le jour. Je vais dynamiser ça à la condition que les étudiants pour que ce soit une autre chose. Donc, vous avez professeur et il vous a demandé de danser et bien sûr, est donc il est bon de juste garder ces choses uniformes. Donc c'est ce qui est mon plancher de conception à leur et puis les étudiants dot idee est égal à dans
les menthe roulées . Malin sombre. Dans ce cas, je veux des étudiants que je suis étudiant. Ensuite, je peux exécuter cela à nouveau sur ce qui va arriver est que vous voyez Non, que les détails des enseignants sont toujours là. Et puis à droite, c'est une colonne en attente pour les étudiants. Alors où leur étudiant i d.
trois. On voit les détails pour les étudiants. D' accord, je vais le faire encore une fois à ce stade, c'est probablement moins de bras ou de confusion parce qu'au moins on voit les détails. Non, mais nous voyons toutes ces informations non pertinentes parce que nous n'avons pas besoin de voir les idées sur l'institution. Autrement dit, Vous ne voulez probablement pas voir le joint sur la date de naissance, des étudiants sur ce qui collé sur le cours, et nous semble ou peut-être un vrai encore mieux. Donc, nous allons aller de l'avant et affiner ça au fur et à mesure. Donc, je vais juste me joindre aux cours. Amusant sur ce que le cours est, Quels sont les cours stables ? Après être venu avec plus d'inscriptions Force je me souviens. J' ai dit qu'il pourrait devenir confus quand vous avez le même nom sur deux tables et cette situation serait extrêmement bonne de voir les cours point cours I d. Donc, nous savons exactement quelle table ce cours idées va de par rapport à quelle table l'autre l' un d'entre eux passe à partir des points d'inscription sur. Ensuite, nous pouvons aller de l'avant et le faire. On verra. Nous récupérons tous les cours et le nombre de crédits de l'école. Donc on récupère tous les détails de tout. Donc c'est ce que je dis. Que nous n'avons pas besoin d'orteil répéter les détails dans plus d'une table, est-ce
pas ? Parce que si nous avons tous les détails, ou au moins nos pétitions. Un endroit où nous pouvons toujours le croiser avec une autre table dans un cadre où vous sélectionnez puis la répétition est assez bonne. Ce que vous ne voulez pas, c'est une répétition quand votre histoire va bien. Donc vous ne voulez pas avoir John McDonald, cinq endroits différents dans cinq tables différentes. Vous avez ses coordonnées. Un endroit sur toi. Faites référence à lui par son I. D. Sur dso quand vous avez besoin de trouver plus de détails sur lui, vous joignez juste interne cette table avec ses détails basés sur cette
relation de clé primaire de clé étrangère que vous auriez mis en place afin nous pouvons commencer à affiner ces obits. Je vais quitter cette place,
et je vais en écrire une autre où nous allons sélectionner les colonnes spécifiques que nous
voulons ou rapporter. Je vais quitter cette place, et je vais en écrire une autre où nous allons sélectionner les colonnes spécifiques que nous Non, j'ai commencé par dire que nous voulions seulement les cours donnés par John Gibson. Donc je veux ramener John McDonnell. Désolé. Donc, nous voulons seulement ramener où les idées du professeur. Nous voulons faire ressortir le prénom et le nom de famille du conférencier ainsi que le
prénom et le nom de famille des étudiants sur le thème du cours. Bon, donc c'est tout ce qu'on veut. Donc, nous pouvons aller de l'avant là-dessus. Il suffit de copier ces jointures internes puisque les ont déjà ici. Mais ce serait bien si vous venez de les retaper à des fins de pratique. Donc, je vais en fait juste aller de l'avant et sélectionner les colonnes spécifiques sur alors. C' est là que cette requête et ce genre de devient plus fastidieux car alors vous voyez que
le prénom est présent dans deux tables différentes, donc nous devons être très spécifiques. Quel prénom nous voulons ? On va bien. Donc je veux un prénom, nom et un prénom, encore un
nom de famille. A qui est le prénom des outils ? La dernière chose est que les étudiants sont les enseignants. Ces choses standard. Alors, quelle est une pratique courante dans la base de données ? Le design est, en substance, où quand vous avez une table, vous pouvez simplement appuyer sur l'espace. Donc, dans cette énergie en ligne ici, j'ai le professeur à comprendre l'espace presse, et je vais dire quelque chose comme le thé. D' accord. Sur, les étudiants quelque part pour appeler s sur les cours. Je vais l'appeler. Voyez ce que c'est. Partout où nous aurions dit, enseignant point une colonne, nous pouvons en fait juste voir alias point Cet alias de colonne que cet alias de colonne. Mais cette colonne. Donc, ce moi extraire la carrière beaucoup plus facile. Quand ? Quand il s'agit de ces frais de scolarité. Donc nous n'avons pas besoin d'écrire un point de prof Prénom à l'époque. C' est vrai ? Étudiant, ce prénom. Nous pouvons juste voir t point premier nouveau sur parfois dans inter puisque moi pas nécessairement écailler pour cette partie. Donc, je vais juste courir le premier. Où avec ça. Donc sélectionné ce prénom. À partir de maintenant, je vais juste dire que les inscriptions sur même cela peuvent avoir un alias juste ici. Je peux juste voir d'accord, donc là où j'avais le mot inscription, je peux le remplacer par toi. Et donc cette carrière juste forte à l'intérieur. Regarde ça. Regarde la différence là-bas. Très bien, donc une fois que vous avez une table, il peut juste appuyer sur l'espace et mettre ce pseudonyme sur. Ensuite, je vais juste exécuter cette requête rapidement. Donc quand je ramène ça, je devrais seulement voir John ou ce qui est dans la première colonne des conférences
revenir . Et on y va. Donc le prénom est ce qui revient ? Seulement les prénoms de l'enseignant parce que nous avons spécifié cet alias et nous réutilisons son ici. J' ai vu un Sriram limité cette requête. J' ai dit que nous apporterions le prénom et le nom de famille de l'enseignant alors que non soulève un autre problème. Parce que si je ne vois que le prénom, prénom, nom de famille, je ne sais toujours pas qui est donc je dois mettre un alias sur la colonne elle-même pour qu'il imprime la boîte un professeur Prénom sur. Je vais juste faire ça. Je vais briser la ligne et le faire en cascade. Donc professeur prénom films virgule dans la ligne suivante. J' aime beaucoup à mon cœur est d'être très lisible. Donc, c'est bon quand vous avez lisibles Corey et je peux juste dupliquer cela puisque ah, beaucoup de cela va répéter le nom de famille S O. C. L'intelligence est en train de s'écailler maintenant parce qu'elle réalise que OK, t est le table de l'enseignant défini comme t droit. Rappelez-vous cela comme mot clé. Qui aurait pu utiliser comme nom de famille sur le nom de famille ici sur la raison
des crochets ? C' est parce que vous avez des espaces entre les deux ? Ce que nous voulons est un frappeur de colonne, sq. conscient, tournant sq du pieu il littéralement comme ceci. Avec tout cela, il essaierait de créer certains mots-clés ultimes. Donc, nous voyons utilisera tous les mots clés. Mange juste ça littéralement. Comme vous l'avez tapé. Donc, avez le prénom et le nom de famille de l'enseignant, et nous voulons aussi le prénom des élèves sur le nom de famille. Donc, comme je l'ai dit, nous pouvons simplement dupliquer ces lions parce que cela se répète et nous venons de raffiner. Alors les étudiants, les étudiants, ce serait le nom de famille sur. Puis enfin et rappelez-vous, nous avons utilisé Thomas pour chaque séparation de colonne jusqu'à la dernière colonne. Enfin, nous voulons le titre du cours afin que le cheval ait la zone voit. Je peux juste voir ce titre, et ensuite nous pouvons lui donner un titre de cours d'en-tête personnalisé sur. Mais c'est essentiellement ainsi que nous faisons pour obtenir des rapports. Tu sais que tu travailles sur l'organisation. Ils vous demandent de mettre un rapport directement à partir des abeilles de données. C' est ainsi que vous écririez globalement les carrés lorsque vous avez plusieurs tables avec plusieurs données à travers l'endroit, vous savez, vous venez de découvrir ce qu'ils ont en commun jusqu'à vos jointures internes. Ensuite, sélectionnez le théâtre. Cela est absolument nécessaire au rapport que la personne a demandé, parce que si vos supérieurs nous pour ce rapport, vous n'avez vraiment pas besoin de leur montrer le I ds et le vous connaissez l'école principale. Peut-être que vous voulez que le cours des sports incluent, Bullseye. Il suffit de dupliquer cela à cette virgule et je dirai, voir point core marqué sur ce est la force pour tout droit. Et puis aussi, quand vous êtes quand vous allez être rendu des rapports, vous ne voulez pas manquer de noms,
vous voulez quelque chose de lisible par l'homme. Je pense que nous avons traversé ça en gagnant à travers nos soucis sélectionnés. Vous voulez vous assurer que la personne peut lire. C' est vous savez, ça a l'air soigné. Donc, nous avons juste essayé de garder une certaine uniformité et une certaine qualité une certaine norme parce que votre superviseur ou celui qui lit le rapport ne verra pas une base de données, pas tout le temps, donc ils ne sauront pas que l'inscription soit. Il est ici comme un mot et des chaps inférieurs. Mais au moins quand ils l'obtiennent dans une décharge, vous savez, sous une forme présentable sur laquelle vous vouliez réserver. Donc, nous lançons cette requête et nous voyons enseignant, prénom, enseignant, nom de famille, CNN afin que nous puissions clairement distinguer qui est qui. On voit que Johnny enseigne Judy. Oh, je n'ai pas d'erreur ici à cause de Jodi apparaissant sous le nom et le prénom. Deuxièmement, malgré le retour sur n'a pas changé ça. Bon, donc on peut juste réexécuter ça. C' est pourquoi il est bon de vérifier votre travail. Donc, John MacDonald a enseigné Jodi Macintosh sur tous ces titres sportifs à l'époque. Si nous voulions seulement voir des étudiants John
, c'est comme ça que nous avons commencé, alors nous le pouvons. J' avais un étaient proches, donc nous sommes allés à travers les étaient proches. Quand nous allons dire le filtrage sur nos requêtes étaient à la condition serait Il pourrait être que le prénom des conférenciers est peut-être John. Mais je ne ferais pas comme ça. Je préférerais filtrer sur le i d. donc je dirais que je suis trop bien. Donc je veux dire, peut-être qu'un superviseur est venu te voir et t'a dit, Hey, trouver tous les étudiants que Johnny enseigne Tu sais, si tu dis John, peut-être que j'ai plus d'un John dans la base de données, pour qu'elle soit dans la conversation. Tu sais, c'est John McDonnell qui se fait dénoncer, mais si tu essayes de le faire, alors donne-moi. En avoir plus d'un. John McDonnell est dans votre base de données Donc le I D est la chose la plus unique pour séparer les deux John McDonnell que mes petits morceaux. Donc, je trouverais juste ce qui est le i d de la personne spécifique demandée sur dit est à dans ce cas malade, Donc je vais juste dire que nous sommes t points que j'utilise sur mon s est égal à deux sur DSO. Cela va effectivement aller de l'avant sur tout filtrer. C' est juste pour me montrer John McDonalds et tous ses étudiants. Donc, vous voyez que Jodi prend le problème Mill SQL PHP avec eux. Patrol fait HTML et PHP sur Tricia. Il fait SQL et les mécènes font aussi demander votre sur Ce sont les sports de base que vous allez le long . Donc, bien
sûr, il y a différentes façons d'exécuter ce genre de rapport, de couper toutes ces répétitions et de l'affiner. Mais à la fin de la journée, vous voulez vous assurer que vous avez une bonne compréhension de l'ensemble. Vous global faisant vos jointures internes lorsque vous avez des relations ou que vous apportez des données provenant de différentes sources sur Enfin, comment vous allez filtrer le filtre dans la clause where devrait le plus souvent alors
plus souvent qu'autrement, être le dernier. Bon, donc on aurait pu commander par. Donc, vous faites une commande après tout cela. Et disons que nous voulons commander par titre de cours Donc nous disons Voir les points sur nous pouvons voir le titre. Donc, selon le titre qui viendrait après que vous étiez là, nous avons Ok, Johnny Teaching Patrol et Judy chaque jour. Les familles les enseignent. Ce sont les discours que nous étudiants et ces domaines étudiants SQL. Donc, en fonction de la façon dont vous êtes le détail, vous pouvez en obtenir des choses différentes parce que vous savez que c'est fait tout le temps. Hum, mais alors les étudiants semblent être aléatoires partout. Mais au moins, on peut le savoir. Voir, où est les étudiants HTML oui. À qui sont la parole ? Être des étudiants, il doit sur il a trois s doubles étudiants sur DSO. Encore une fois, sur la
base de l'ensemble
que vous écrivez, vous interrogez, il peut obtenir des données différentes et vous voulez être gentil et propre sur prêt pour l'exportation. Donc, si vous voulez exporter cela, nous pouvons toujours juste clic droit et nous pouvons voir les résultats comme Et puis nous choisissons le
type de données que nous sommes plus à l'aise avec Donc, nous pouvons docs parce que voir si nous pouvons ouvrir dans Excel sur Ensuite, nous disons juste Les rapports d'inscription des étudiants, puis nous l'avons sauvé et ensuite nous pouvons l'envoyer à nos superviseurs. Hors cours. Le titre n'a pas donné toute l'histoire parce que c'est vraiment des étudiants sur John. John inhumain. Les étudiants et les inscriptions lisent finalement être étourdi. Les données que nous avons ici, donc ce fichier de jupe sera inclus dans la ressource est pour cette vidéo stick notre propre CNN
22. Les adhérents à la gauche, à droite et à la totalité: Hé les gars, dans cette vidéo, nous allons reprendre là où nous nous sommes arrêtés la dernière fois à propos des joints internes, et nous allons regarder d'autres types de joints que nous pouvons faire entre les tables, à savoir les joints gauches sur les articulations droites. Non. Avant d'aller de l'avant, je veux juste que nous examinions certaines décisions que nous avons besoin de plus et de la place instable sur celles qui seraient autour de la nécessité hors valeurs pour les valeurs clés étrangères Vous vous souvenez que nous avons autorisé des connaissances sur chacune des quatre clés étrangères et hors cours. . Ces décisions de conception pourraient être modifiées parce que l'inscription ne devrait vraiment pas se produire si un étudiant et, bien
sûr, ne vont pas ensemble. Cependant, en termes pratiques, il peut y avoir une inscription d'un étudiant à un cours, mais aucun enseignant n'est affecté à cette inscription pour l'instant. Et donc, conformément à cette décision de conception, j'ai ajouté un peu plus de rose. Quelques autres rolls off data toe notre table des enseignants de la table des cours sur la table des inscriptions. Donc, ici, vous voyez que j'ai sélectionné toutes les inscriptions et j'ai quelques colonnes. Ne pas à la fin où les idées de l'enseignant en fait pas sur, mais nous avons des étudiants étant assignés au cours avec I D sept. Sachez juste que le conférencier est affecté à ce cours tout de suite. J' ai inclus des scripts qui vont insérer des cours supplémentaires sur des enseignants supplémentaires dans la
base de données afin que vous puissiez aller de l'avant. Il a également fait un changement de conception. J' ai changé professeur deux professeurs qui est professeur de table d'animaux en enseignants comme enlever le S. Alors j'ai fait cette partie. Puisque vous pouvez vous sentir libre de changer ce design ou tout simplement modifier le script en fonction de ce que vous avez, non, jetons un coup d'oeil au concept à gauche Onda, articulations
droites ? Non. Encore une fois, réfléchissons à notre déclaration sélective sur notre inscription, Steve, qui est de ramener chaque inscription qui est actuellement dans le système. Eh bien, au moins le top 1000. Puisqu' on est moins de 1000, on en parle tous. Nous voyons ici que l'entre les idées envoyées par 21 il n'y aurait pas de conférencier ou d'enseignant affecté à ces inscriptions. Maintenant, ici, Everton et énergize déclaration, qui va ramener toutes les colonnes entre les deux tables et les Romains et les enseignants . C' est ce que veut dire l'étoile. Si vous vous souvenez sur l'attente est que la jointure interne va en fait juste
ramener de chaque côté où la condition est remplie, ce qui signifie que l'enseignant I d dans l'étable d'inscription et j'utilise que Ellis est TNT E pour dans Roman ville pour les enseignants. Donc E, c'est professeur i d. plus exactement l'i d dans la table des enseignants sur. Si cette condition n'est pas prévue, alors cette règle ne sera pas renvoyée. Et donc l'attente est que lorsque nous exécutons cette requête, la rose 17 à 21 ou des idées quelque chose à travers 21 dans les inscriptions ne sera pas retourné parce qu'il n'y a pas d'enseignant dans l'écurie de l'enseignant avec une note i d off. Donc, aucun ne correspond à aucune de ces valeurs. Alors j'ai appuyé sur leur cinq ici. Nous voyons que les deux là où les résultats sont farcis dans les meilleurs résultats, nous voyons que nous apportons environ 17. Un total de 17 a augmenté pour les inscriptions. Cependant, dans les trucs inférieurs, nous voyons que nous ne ramenons que 12. Ce qui me détourne, c'est qu'il y a eu des omissions au fur et à mesure que nous Donc creux 17 à 21 sont les inscriptions 17 à 21 n'ont pas été retournées parce qu'elles ne remplissaient pas la condition minimale. Maintenant, dans un scénario où vous vouliez ramener chaque inscription, indépendamment de la présence des données trop cette condition exacte. C' est là que votre articulation gauche entre en jeu. Donc, la jointure gauche est vraiment facile. C' est juste une modification d'une jointure intérieure typique où, au lieu de voir l'intérieur, vous littéralement juste à gauche sur. Ce qui se passe ici est qu'il ramènera chaque chose sur le côté gauche, hors de la carrière sur je vois le côté gauche de la chorale parce que si vous lisez de gauche à droite et que je vais juste mettre tout cela en une seule ligne, alors vous voyez que le table des inscriptions est à gauche de l'articulation sur l'enseignant Sabres à droite de la joie. Donc je suis parti vous rejoindre en voyant ramener chaque rouleau, chaque donnée brute de la table. C' est sur la gauche. S' il y a beaucoup, alors vous pouvez ramener toutes les données correspondantes sur la table à condition que les droits soient respectés. Mais même s'il n'y a pas de date correspondante sont toujours ramener cette colonne sur la gauche. Donc, quand j'exécuterai ce trimestre. L' attente est que cela apportera, mais chaque inscription simple juste qu'il devrait y avoir un peu plus sait dans nos résultats il Donc exécutons et voyons ce qui se passe. Bon, donc j'ai écrit une déclaration complètement différente pour nos articulations gauche. Vous savez, nous avons trois carrières qui exécutent ce script seules, chacune étant affichée ici dans son propre stock. Donc en haut, nous avons sélectionné l'étoile de l'inscription, donc nous savons que les inscriptions auraient environ cinq. règles de Noel. Andi ci-dessous nous avons l'ensemble de données géant interne qui ne devrait avoir qu'environ 12. Donc celui-ci n'apporte que les correspondances exactes. Mais alors le dernier, qui serait les résultats que de ou à gauche conjointe, aurait en fait toutes les inscriptions uniques. Très bien, donc nous avons des inscriptions et voyons où apporter des idées 17 à 21 avec les
détails d'inscription . Mais parce qu'il n'y a aucune valeur dans l'enseignant i d. Il y a beaucoup inconnue parce que, eh bien, cela n'a pas rapporté les données correspondantes de notre table des enseignants. Donc, c'est le retrait d'une jointure gauche. Vous pouvez être confronté à une situation où vous savez que nous avons besoin de tout récupérer d'un côté, mais vous avez besoin de données supplémentaires si elles sont disponibles. Mais la table de la table principale est absolument important sur ce serait cette situation. Les inscriptions sont absolument importantes. Peut-être que l'administration veut voir ho. De nombreux étudiants se sont inscrits à une
classe, qu'ils aient ou non une conférence. Donc, cette inquiétude ramènerait en fait chaque inscription qui existe indépendamment la présence d'un enseignant. L' inverse peut aussi être vrai, donc nous ne sommes nulle part à la table de gauche, et nous pourrions toujours nous arrêter. Le soldat pourrait mettre les enseignants sur le côté gauche et les mots et unti sur
les inscriptions sur le côté droit sur ce serait réellement amener chaque enseignant, indépendamment s'ils sont actuellement affectés à et inscrire nos deux une classe. Mais au lieu de faire tout cela et cette commutation, nous pourrions simplement utiliser le joint droit, ce qui ferait essentiellement l'inverse de l'articulation gauche, où ramènerait tout dans la table à droite de l'articulation Andi, peu importe s'il a beaucoup en tête dans la table à gauche, donc ici. J' ai écrit une déclaration sélective avec notre droite se joignant à nous que donc cette fois les biais sur l' enseignant stable où vous voulez voir chaque enseignant que j'ai inclus. Certains enseignants ont inséré quelques autres enseignants, mais tous n'ont pas reçu une seule inscription. Donc, l'attente est que nous allons voir chaque enseignant et une inscription si elle existe et si elle n'existe pas, les inscriptions seraient vides. Une fois de plus, j'ai toute ma paroisse. Vous êtes coincé orteil ont mon étoile sélectionnée parmi les inscriptions en haut. J' ai ma jointure intérieure ici. J' ai mon joint gauche ici. Quand je descends, je verrai que j'ai mes droits ici. Et si je fais défiler, voir que les détails de l'image ne se répètent pour chaque inscription pour laquelle ils sont
amis associés ID . Donc partout, il y a I D à une inscription. C' est là que se trouve John Matalon. Cependant, nous pouvons voir ici que ces trois conférences qui viennent d'être ajoutées nous ne sommes pas les mêmes que n'importe quelle classe. Donc nous ramenons tous les conférenciers à droite. Droit ? Souviens-toi, on utilise le bon joint. Ainsi, l'enseignant se tient au courant des droits ou amène chaque conférencier. Andi, s'il y a une inscription et qu'on voit les détails, sinon, alors tout est non. Et vous pouvez noter aussi que le que les inscriptions qui n'ont pas été donnés un enseignant i D et autre école sur rapidement ces inscriptions avec EEI 17 à 21. Ils ne sont pas renvoyés ici parce qu'une fois de plus, le bon joint est de donner le biais à l'enseignant à l'écurie de l'enseignant, qui est sur la droite. Ainsi, le joint gauche donne par un magasin de tables de déchiqueteuse sur la gauche ramènent chaque
enregistrement unique , indépendamment de off. S' il y a beaucoup de noix sur la droite, rejoindre fait fondamentalement les contraires, donc il ramène tout aux droits, indépendamment de off. S' il y a beaucoup pour les données qui sont sur la gauche,
la déclaration finale que je vais vous montrer est la jointure complète, qui dit fondamentalement que je veux tout de chaque côté. S' il y a beaucoup, alors ramène-moi une règle avec tous les détails. S' il n'y a pas beaucoup, alors ramène-moi de chaque côté, peu importe ce qui est ce que le plein nous a rejoint. Donc, nous avons la gauche. Nous avons le droit et nous avons le plein sur ce n'est pas encore ou intérieur des villes à travers. Et assurez-vous qu'il reste exactement beaucoup de choses qui disent s'il y a exactement beaucoup, alors c'est bon. Mais amenez-moi tout sur le côté gauche de ma requête, à droite ? Nous avons rejoint en face de gauche. Joignez-vous Ce qui était juste n'est pas ce qui restait n'est pas droit sur le joint complet dit que je me fiche quelle direction vous êtes, juste ramène-moi et s'il y a beaucoup alors amende sur DSO les derniers résultats que nous
regardons ci-dessous. En fait, il choisit ce qui se passe pendant la pleine joie. Donc, nous voyons ici que toutes les règles qui auraient été manquantes dans l'articulation interne jointe ou gauche, à
droite, droite, jointes. Ils sont tous ramenés ici donc, ou des conférenciers sans sur la ville de demeurer sur les inscriptions sans un conférencier sur toutes les inscriptions qui ont des conférenciers assignés ou des enseignants assignés. Tout revient sur ce support de la jointure complète afin que vous puissiez aller de l'avant et
jouer avec cela. Les trois fichiers de script ont été inclus dans la ressource est pour cette vidéo. Amusez-vous
23. Regrouper des données en utilisant la seule clause SQL GROUP PAR: Hey, les gars, dans cette vidéo, nous allons regarder le groupe SLA carré par des déclarations. Maintenant, l'instruction Escalade a grandi par est une excellente façon de regrouper littéralement les données pour voir des données
plus distinctes. Onda. Nous allons examiner comment il est écrit,
la différence, les variations et les constitutions que l'on doit faire en utilisant cette déclaration, Andi, Dans le reste de cette section, nous allons en fait examiner agrégat qui s'appuient sur cette instruction. Non, j'ai commencé en disant que l'instruction SQL Group by peut nous aider à identifier une donnée
distincte sur. Je veux juste injecter un peu de cet asiatique ambigu là, avec l'instruction distincte select donc select,
distinct, distinct, dit
en fait que quelle que soit la date que je suis sur le point de sélectionner, je ne chercherai que Rose unique. C' est ce que fait la sélection distincte. Donc, si j'ai fait une sélection distincte sur les inscriptions que ce qu'il ferait est si j'avais une règle que C a écrit 12 avec les mêmes données sur les colonnes d'entre elles en sélectionnant, alors cela ne ramènerait qu'une seule règle. Prenons donc, par
exemple, et voici un exemple pratique, au moins dans cette inscription stable dans le monde réel. Il ne devrait pas y avoir deux règles qui ont le même je d enseignant je l'étudiant i d idée appliquée . Au moins prendre des idées jusqu'à la photo. Aucun enseignant en cours ne devrait répéter dans votre table. Donc il y a ça. Mais alors, dans cette situation, j'ai un conférencier ou un enseignant qui enseigne le cours, et j'ai deux exemples à deux reprises que comparaître ici est un pour un et quatre. Donc, j'ai rapidement écrit jusqu'à des déclarations voulait sélectionner. C' est l'idée de l'enseignant et le cours que j'ai suivi des inscriptions. Et si vous voulez obtenir fantaisie hors cours Candice, intérieur joindre tout. Donc, vous obtenez plus de détails. Mais juste pour l'opportunité, je vais juste utiliser cet exemple rapide. Sélectionnez donc ces deux problèmes dans la stable d'inscription. Et voici toutes les inscriptions. Lorsque je lance cette requête, il devrait ramener 17 rose seulement avec l'idée d'enseignant et le cours que j'ai connu. On les regarde ensemble. Nous voyons que nous avons quelques répétitions ici. Nous devons finir d'entendre les orteils ici Nous avons un et 41 et quatre, etcetera, etcetera. Donc la sélection Distinct va en fait dire, OK, puisque je vois ces deux deux deux et deux fois, alors je n'ai besoin que de le ramener une fois. Et c'est le but. Soumettez cette chose. Donc je vais juste exécuter cette ligne et ensuite vous pouvez comparer les données. Tout mettre. Donc ici, nous voyons que nous sommes en train d'éliminer étaient pas de ou il est 17. Donc nous ne sommes pas de 17 règles à seulement neuf. Donc, cela laisse distinct effectivement éliminé tous ces rôles répétés. Donc, si vous êtes dans une situation où vous avez des règles répétitives discutables, vous n'avez vraiment besoin qu'un seul rouleau représenté dans vos résultats, puis le mot-clé distinct juste avant les colonnes, juste après les mots select qui est votre pour éliminer ces répétitions. ce n'est Mais pas pour cela que nous sommes ici. raison pour laquelle nous sommes ici, c'est que le groupe est maintenant regroupé. En fait, il y a quelque chose d'un peu différent que le regroupement distinct sélectionné ne
ramènera en fait qu'un seul enregistrement. Cela est tout hors des exigences, et cela amène à ce seul enregistrement en fait faire comme une chauve-souris cultivée genre de
chose de mathématiques pour réellement garder une trace des règles de nombre off qui étaient là, permettant à notre encore alors couche certaines fonctions mathématiques sur le dessus. Donc, si vous avez besoin de muff comme, par
exemple, peigner vers la moyenne ou le maximum ou le minimum ce genre de choses, alors vous devez utiliser notre groupe par pour réellement ramener ce bonbon hors des
mêmes données par opposition à le distinct de la volonté distincte. Juste, hum, il a grandi par Trump en fait, donc nous allons juste faire quelques exemples à partir de ça. Comme nous passons par cette section avec une différence, j'oublie les fonctions. Ensuite, vous verrez exactement ce que je veux dire par le groupe. J' aide en fait avec la fonction de l'article champignon. Maintenant, nous allons juste modifier ce carré qui est déjà ici en sélectionnant tout de nos inscriptions et à un groupe par la chose avec nos yeux de groupe que c'est la dernière déclaration. Donc, en d'autres termes, si vous avez une jointure interne, il vient avant le groupe par si vous avez un où il vient avant le groupe par. Donc, nous allons utiliser qui étaient dans cette situation, quelqu'un pour voir où on nous donne un cours contre l'enseignant I D à Donc nous voulons faire des
choses où l'ID de l'enseignant est égal orteil de l'autre exécuter et tamiser. Donc, ce sont toutes les données relatives à l'enseignant I D à non, La première chose à noter avec le groupe par est ce que ? La deuxième chose à savoir ? Ce que le groupe par est que chaque colonne référencée doit être incluse dans le groupe par Andi. Il s'agit d'une malédiction bénie car plus vous mettez de colonnes, plus il y a de variations hors données, moins le regroupement peut réellement se produire. Donc, prenons, par
exemple, I d.
I.
D I. est différent dans chaque règle dans ces résultats que si j'incluais I d dans mon groupe par, je ne verrais littéralement aucune différence. Très bien, donc de la même façon que vous écrirez le select int Andi, spécifiez les colonnes de la même façon que vous grouperiez par colonne colonne Hama, etcetera, etcetera. Et si j'exécute cette requête, alors vous voyez qu'il n'y a littéralement aucune variation dans l'ensemble de données qui revient. parce que chaque rôle est unique, il n'y a rien à regrouper car il ne peut pas regrouper des données nettement différentes ou augmenter. Donc, quand vous dirigez un groupe par. Vous devez commencer par un processus d'élimination. Quelles données ne sont pas absolument nécessaires à mon groupement. Donc, disons, par
exemple, que je n'ai vraiment pas besoin
de groupe I d. Donc mon groupe commence par une idée de professeur de cette nourriture. Donc non, c'est
que j'ai retiré l'idée de la photo. Cela dépend du type de coléoptère que nous voulons revenir une fois de plus. Voyons donc nos scénarios que nous voulons voir à la maison tout ou partie des cours donnés par cet enseignant. qui signifie que je veux juste voir le professeur que j'ai sur le cours, l'enseignant déjà dans le cours de la société et le cours. Et vous pouvez voir que ceux-ci commencent à répéter parce qu'il est déjà là pour bien sûr. Il est déjà là pour bien sûr. Un, etcetera. Donc, évidemment, la variation des valeurs avec l'étudiant que j'ai d à travers les forces serait fausser ces résultats afin que je puisse juste éliminer l'idée de l'étudiant juste engagé rapidement parce que je
vais l'utiliser à une date ultérieure le. Ensuite, je l'exécute. Voilà, tu y vas. Donc, le groupe je ne suis pas éliminer tous les rangs supplémentaires sous ressortant arrière le professeur du
groupe i d avec cours un forcé à votre histoire. Et rappelez-vous que nous utilisons le groupe par parce que vous voulez utiliser un peu mon ami, Vous entrez dans la bouche et les fonctions agrégées un peu plus tard. Mais pour l'instant, juste apprécier l'ensemble du groupe par des œuvres. Donc on voit ici. Évidemment, si les notes étaient différentes qu'il y aurait des variations là aussi,
Donc, il serait nettement différentes dates à nouveau. Donc, pour l'instant, on n'a pas besoin de note. En fait, je ne me souvenais pas de l'enlever. Ils peuvent s'exécuter sur. On y va. Donc le groupe achète juste ces deux-là ensemble. Et si nous voulions voir tous les étudiants que cet enseignant enseigne indépendamment du cours ? Alors l'idée des étudiants deviendrait notre source hors conflit. En outre, orteil cheval I d. Donc, nous pouvons juste commenter idée de cours sur. Ensuite, nous l'exécutons. Et donc vous voyez le professeur revenir avec un seul record de l'élève. Et bien sûr, nous pouvons aller de l'avant et le rejoindre sur table si nous le souhaitons. Oh, d'accord. J' ai donc écrit mes déclarations communes internes et je vous montre juste cette erreur ici sur. C' est pourquoi j'aurais fait allusion à utiliser dans les robes avant parce que si deux tables ont le même nom creux, alors il y aura une certaine ambiguïté quant à laquelle est laquelle. C' est pourquoi nous avons mis sur notre Ellis est sur. Nous utilisons ces deux distinctement identifier à quelle table il est à laquelle nous faisons référence. Non. Après avoir ajouté les deux tables, jointures internes à cette requête. Nous devons ajouter les colonnes. Non, pas le temps de comprendre cette époque, voir que certaines choses sont impliquées parce qu'elles ne font pas partie du groupe par des chiffons . Rappelez-vous que n'importe quelle colonne que je mets dans un autre espace. Donc, ce que j'ai fait était d'inclure le prénom de l'étudiant sur le nom de famille de l'étudiant et de l'appeler nom de l'
étudiant. Et j'ai inclus le prénom de l'enseignant sur le nom de famille appelé Nom de l'enseignant. Sur les deux hors. Ce sont n'importe quelle colonne dans laquelle je fais référence. Ma sélection doit être référencée dans mon groupe. Je donc je dois aussi ajouter s pensée première nouvelle ce nom de famille de la pensée et répéter la même chose pour les colonnes de l'enseignant et après avoir terminé d'ajouter mes colonnes supplémentaires à mon groupe par Donc, il n'a vraiment pas beaucoup du fait que les concaténation eux, s' interroger sur le nom complet. Il est juste important que je fasse référence à eux dans ma sélection. Et si je les sélectionne
, ils doivent être séparés du groupe par. Donc,
quand je radie toute cette carrière et toute cette condition, alors je dois m'assurer que mon groupe est une partie, contient toutes les colonnes qui font partie de ma carrière et ainsi de suite. Vous voyez que l'idée de l'enseignant et un étudiant que je d sont de retour sur. Le nom de l'élève revient en arrière ainsi que le nom de l'enseignant, puis il est lu. Vraiment, je n'ai pas besoin de l'idée de l'enseignant sur l'élève alors traitez l'élimination, nettoyez mon rapport sur Dhere. Mon ancien mot est juste un étudiant nommé sur les noms des professeurs à l'arrière. Je suis en train de me regrouper, et je pourrais probablement les sortir du groupe par Klaus. Et voilà. Donc c'est juste un processus d'élimination, vraiment et vraiment, alors parfois vous construisez à partir de zéro. Vous avez besoin d'un rapport. Tu ne sais pas où les dates que j'ai parlé de ton avis, ça va se regrouper. Et puis quand vous voyez un résultat raisonnable, alors il peut l'affiner afin que vous obteniez l'ouverture désirée. Bon,
Donc, comme nous allons le long, nous verrons tout le groupe par nous aide avec nos fonctions d'agrégats.
24. Fonction d'agrégat de SQL AVG: Hé, les gars, dans cette vidéo, nous allons regarder notre A V G ou moyenne. Soit obtenir la fonction sur ce est construire sur le dessus de notre groupe SQL nouvellement acquis par l'
utilisation de l'instruction sur la compétence et dans cette vidéo parce que nous avons besoin moyenne est numérique sur, qui signifie un changement de structure de base de données. Donc, nos tables d'inscription initialement conçues orteil ont une lettre avidité. C' est pour ça qu'on a commencé. Ce sont des pouces, aussi. Je vais juste modifier le design pour que nous ayons quelques notes numériques, et ensuite je vais entrer quelques chiffres dans ce tableau. Donc, pour changer le design comme un rafraîchissement, nous pouvons détruire la conception de la table sur. La bonne chose est que nous n'avions pas de données dans ou de colonne de grille, donc vous pouvez garder cela à l'esprit lorsque faire et concevoir des changements à votre colonne. Si les données sont là que les données peuvent être corrompues en fonction du type de changement, un terrible à faire. Donc, en passant d'un orteil de chaîne, disons à flot est en fait un type destructeur de changement à n'importe quelle chaîne qui était là, et vous auriez probablement une erreur au moins en passant de flotteurs à une chaîne ou deux. Un pneu d'environ entier n'est peut-être pas aussi perturbateur que le nôtre. Soyez donc très prudent lorsque vous apportez ces changements de conception. Et si vous avez déjà des notes là-dedans, alors vous pouvez probablement créer une autre table juste
pour que vous puissiez suivre avec les exemples de cette vidéo. Donc je veux dire, ce design a changé. J' ai changé, accepté de flotter, et je peux simplement cliquer sur enregistrer et vous en faites un avertissement qui voit que vous n'êtes pas une charge pour voir les changements. Et c'est bon parce que ces erreurs d'air que vous voulez dire entre la cheville quand moi bonbons Toby échange. Donc nous allons traverser cette époque ensemble. Donc, quand vous rencontrez cette zone, vous devez aller aux options d'outils, et puis vous allez chercher les concepteurs afin catégorie sur les concepteurs de table et de base , et puis vous allez tante orteil. Cette option, qui est, empêche l'enregistrement des modifications qui nécessitent une récréation de table. Donc, comme je l'ai dit, certains changements peuvent être perturbateurs. Donc, je voulais juste que People K, puis cliquez sur enregistrer et puis en arrière-plan, il exécutera effectivement des scripts de mise à jour parce que juste au cas où j'ai fait un changement. J' affecterais les tables liées qu'il a besoin d'un groupe orteil de ces changements à travers. Donc, je pense juste que oui, sur leur prochain juridique, je vais juste aller rapidement directement pour éditer Top 200 entrer quelques grandes valeurs. D' accord. J' ai donc rapidement entré quelques valeurs et je peux vous assurer qu'il n'y avait pas de biais avec ces valeurs. Andi sait donc que nous avons des valeurs de New America qui ne sont pas des ID, parce que la moyenne I ds ne serait pas vraiment hors de tout habitué à nous. Nous pouvons réellement nous plonger dans nos fonctions agrégées. Donc, je vais juste le lire avant ici pour sélectionner étoile parmi les inscriptions. Et ensuite, nous pourrons nous appuyer sur cela. Donc nous avons toutes les inscriptions et nous avons un tas de grands maintenant nous permet de voir. Nous voulions voir la note moyenne pour un cours 1. D' accord. Quel que soit le cours que j'ai suivi, nous voulons juste voir quelle était la note moyenne pour cette classe. Il y a donc un tas de choses que nous devons faire. Donc, nous avons tous les enregistrements des inscriptions, et ensuite nous devons filtrer sur la classe de particules. Donc nous allons juste dire que nous sommes sur, prendre le cours que j'ai égal à un et ensuite nous pouvons exécuter ça. Et nous voyons que nous ne voyons qu'il y avait trois étudiants pour le cheval I D un et ce sont
les grands. Encore une fois, nous voulons une moyenne pour ces grilles. Non, si vous êtes un programmeur, alors vous savez, par programme, pour trouver une moyenne utiliserait Luke d'une sorte. Et si vous avez de la fantaisie que peut-être un appel récursif. Mais le fait est que vous auriez besoin d'une structure de répétition en place pour
passer en revue, trouver toutes les notes sur certaines d'entre elles, puis les diviser par le nombre de notes hors qu'il y avait. C' est une façon mathématique, et vous pouvez trouver cet algorithme Italie. Non, SQL ne le fait pas nécessairement. Je veux dire, il supporte la structure d'arbitrage dans le sous la forme d'une boucle ou d'un curseur. Mais dans cette situation, nous n'avons pas à faire ce feu. Nous pouvons utiliser notre fonction d'agrégation combinée avec notre groupe en accomplissant cette tâche. Maintenant, en sélectionnant ces données, nous n'avons vraiment pas besoin de connaître le professeur i d ou l'étudiant i d. Parce que nous ne sommes intéressés que par le cours qui est I d 1 à la note moyenne afin que nous puissions simplement restreindre notre sélection. Rappelez-vous ce processus d'élimination sur Nous prenons Lee le cours que j'ai sur les notes. Et donc nous avons filtré vers le bas pour juste l'idée de cours et juste un grand Mais alors ce que nous
attendons vraiment des orteils ont est un cours sur juste ce seul disque qui a le cours que j'ai d sur la grande valeur. Et dans ce cas, la grande valeur devrait être la moyenne. Donc la prochaine chose que nous devons faire est de construire. Notre dernière vidéo est groupée par. Donc, nous disons « grouper » et nous n'avons que deux problèmes. Donc on peut rester ces deux colonnes et les regrouper par ça. Et puis nous savons que si nous n'exécutons rien beaucoup de changements peuvent être juste l'ordre. Donc notre groupe, je n'ai pas beaucoup changé, mais ça n'aide pas parce que nous n'avons toujours pas la moyenne. Donc, parce que nous sommes en train de regrouper et de rappeler ce groupe en fait garder rayé de tout ce qu'il regroupe de sorte que je, sur la fonction agrégée, puisse être utilisé pour faire une forme hors mathématiques orteil une certaine valeur. Donc, dans ce cas, le calcul que nous voulons faire est de trouver la moyenne de cette colonne sur DSO notre fonction pour trouver la moyenne est un V g. Andi, comme n'importe quelle fonction dans la plupart des langages de programmation, nous sommes en place. Ensuite, nous sommes dans cette colonne entre parenthèses. Et donc ce que cela va faire, c'est quand il exécutera son aller pour grouper le cours I d. Donc, nous savons que nous avons vu que le groupe achète seulement va revenir. Il est la seule tendance est d'essayer de retourner le moins de lignes possible. J' ai donc passé à essayer de regrouper tous ceux en un seul parce que nous exécutons cette fonction
get. Le A V G va en fait juste dire à la maison toutes les règles devrais-je regrouper sur effectuer autant sur. Donc, quand j'exécute ceci, nous récupérons une règle avec une valeur et non,
nous ne l'avons pas fait parce que je vous ai trompé. Sachez juste. En fait, ce qui devrait arriver, c'est qu'une fois que vous faites et exécutez cette fonction d'agrégat sur une certaine colonne, vous ne l'achetez pas en groupe. Donc, le groupe, en allant toujours prendre en compte le fait que leurs valeurs distinctes ici et encore les
ramener. Donc, si je vais agréger sur la colonne ou exécuter cette moyenne ou des marques ou quoi que ce soit une sorte de fonction, alors je ne devrais vraiment pas être regroupé par cette colonne même. Donc, je vais juste supprimer cela sur DSO. Je suis en train de regrouper par Force I d, ce que je sais est en train de répéter. Je fais la moyenne de tout ce qui a besoin de ce groupe. Ce groupement était idée de cours est égal à un. Et donc quand j'exécute, vous voyez qu'on a une règle avec une idée de cheval une en moyenne. Et si vous ne faites pas confiance aux mathématiques, vous pouvez toujours calculatrice politique et le tester vous-même. Et donc si je supprime cette clause étaient et j'exécute, alors il essaiera de regrouper tous les cours par leurs idées respectives sur apporter, mais la cupidité
moyenne pour chaque inscription à ce cours articulaire. Donc, si je veux, la moyenne convenue pour tous les cours que cela. Où suffirait ? Et donc vous voyez que la note moyenne à travers le cheval un est de 70 points à 70.3 sur quatre force, à laquelle 80,3 etcetera, etcetera sur parce qu'il n'y a pas de notes mettant pour sept que la note moyenne est Non sur. Si nous voulions commander cela d'ici là, nous pourrions simplement ajouter dans notre ordre par sur les genoux ici sur ce qui serait
vouloir ordre par voudrait commander par un grade V par g. Et on y va. Donc, c'est de la plus petite, très valeur à la plus haute. Et si nous voulions éliminer cela, non, alors nous pourrions juste nulle part près de voir étaient une qualité V un g ne sait pas Andi Il ya que vous voyez qu'il ne peut pas avoir une clause où avec plus d'accord avec sont soit obtenir téléphone, Sean. Très bien, donc cela m'amène à mon deuxième point sur les fonctions d'agrégation où si vous voulez avoir une griffes
étaient sur la valeur agrégée, alors vous ne pouvez pas utiliser étaient, mais vous avez un mot-clé qui est en train d'avoir sur Ensuite, vous pouvez voir une grille V g sur alors et là vous allez. Donc, chaque fois que vous voulez filtrer sur une colonne régulière, vous savez que vous avez vos clubs étaient. Si vous voulez filtrer sur une colonne agrégée, ce qui signifie que vous utilisez l'une de ces fonctions d'agrégation et n'oubliez pas que vous en avez quelques-unes . Vous avez un moxie de médias, alors je compte sur, nous les aborderons tous au fur et à mesure que nous continuerons. Mais une fois que vous filtrez sur une de ces colonnes agrégées, alors vous devez utiliser avoir sur avoir suit le groupe par classe sur. Alors tu as eu ton état. Donc, cela pourrait être un V. G convenu est supérieur à 70 et qui ramènerait seulement 70 finissent par il pourrait être équivalent à 70. Il pourrait être,
tu sais, quoi que ce soit. Bien sûr, nous n'avons rien qui soit égal à 70 mais les experts sont 70.3 pour apporter exactement ce que cela veut. Donc, chaque fois que vous voulez flotter, vous devez utiliser leur situation. Et bien sûr, nous pouvons embellir les vieilles pièces ici en joignant toutes nos colonnes et en se souvenant des règles. Une fois que vous êtes groupé par, vous devez inclure chaque colonne qui n'est pas agrégée. D' accord, pour que tu puisses jouer avec ça. Chandler enquête sur le transport avec des scénarios. Je pense que vous auriez des scénarios à la fin de cette section que vous pouvez utiliser la pratique sur l'ensemble . Amuse-toi juste
25. Fonction de Aggregate SQL COUNT: Hé les gars. Donc, nous continuons sur l'exploration des fonctions d'agrégation dans SQL et aujourd'hui, nous allons regarder commentaire Now. Notre scénario est d'amener le nombre d'étudiants et de roulés par cours afin que nous puissions juste démarrer notre carrière, le habituellement où nous allons commencer ou tableau des inscriptions et nous regardons cet ensemble de données
sur ce que nous voulons. Ce qui nous intéresse, c'est le nombre d'étudiants, donc nous savons que nous avons besoin du cours pour filtrer l'avoine en fonction de son
Andi. Ensuite, nous devons appeler dans le nombre des étudiants autant chaque cours. Donc ça veut dire que Force un devrait en avoir un aussi. Trois étudiants de la même logique s'appliqueraient à tout le monde, bien
sûr. Donc, premièrement
, éliminer l'élimination. De quoi ai-je vraiment besoin pour ce scénario ? J' ai besoin du cours I d Andi, J'ai besoin de l'idée des étudiants sur quand je fais ça, nous ramenons seulement ces deux valeurs sur par Non, nous devrions tous être des experts sur les géants et dynamiser quelqu'un de ne pas aller se concentrer sur la
jointure intérieure et ce qui rend cette belle. Je voulais juste me concentrer sur la fonction qui est les fonctions d'agrégation. Donc, la prochaine chose est que nous voulons utiliser une fonction agrégée cône orteil pour le nombre d' étudiants. qui signifie que ou bien sûr un je ne devrais voir qu'un sur bien, trois sur, même si vous voyez qu'ici quand nous aurons fini la fête, je ne devrais pas être vu un et 31 et 61 et 12 mais je devrais juste voir une règle avec cours I d. Un sur compte off. Trois sur le même serait applicable pour tous les autres cours
que je D. C'est présent avec le nombre d'étudiants présents, donc je peux utiliser mon se concentrer sur. Et puis j'aurai une flèche et j'aurai cette flèche parce que ça nous dit que nous
devons utiliser notre par. Donc ce n'est qu'un avertissement. Vous ne pouvez pas utiliser une fonction d'agrégation sauf si vous vous regroupez par. Donc, la prochaine étape serait de regrouper par. N' oubliez pas que nous ne regroupons pas par colonne agrégée. Donc, nous utilisons grandi par idee de cours seulement. Et quand j'exécuterai ça, je reviens. Cours I d un avec les cônes hors trois cours I d avec un point de quatre. Donc ça veut dire ce cours pour chaque cours que je vois chez moi. Tous les étudiants sont inscrits. Donc ce cours Très bien, donc j'ai juste pris quelques minutes et modifier ce carré pour qu'il semble un peu plus beau sur
l' impression. J' ai inclus le cours quoi ? J' ai inclus des cours stables à travers un géant intérieur. Apparaissent en refusant à travers les colonnes. Bien sûr, Pourrait lui donner une belle, belle tête le titre sur donner ou Cônes partie. Et je dépense aussi hors cours parce que la règle cardinale est une fois que vous êtes regroupés par, vous devez inclure leurs colonnes distinctes. J' ai dû acheter le titre sur le score du cours, donc parce que ceux un répète le groupe par atout ensemble, mais aussi inclus un cônes pour le nombre hors de ses cartes sur. Donc, c'est ce que nous sommes capables d'utiliser cette fonction d'agrégat pour obtenir un compte sur dso ne pas ici. Vous voyez que c'est la vieille mise sur. Cela ressemble à quelque chose que vous pourriez réellement transformer en votre administrateur lorsqu'ils envoient cette demande pour un tel rapport. Donc, vous pouvez aller de l'avant et jouer avec ça. Les fichiers de script inclus pour plus de référence Andi, amusez-vous
26. Fonctions d'agrégate de SQL MAX et MIN: Hey, les gars, dans cette vidéo, nous allons regarder nos marques sur les fonctions agrégées moyennes. Pour cet exercice, nous commençons par l'activité de ramener la cupidité la plus élevée et la plus basse pour chaque cours. Et donc, comme d'habitude, nous commençons avec notre étoile de sélection de base, puis nous pouvons évaluer et voir ce qui nous intéresse sur ce sera le cours de la note. Donc, éliminez l'élimination. On dit juste cheval I d
Onda. Je suis d'accord. Donc, non, nous organisons chaque cours sur les notes qui ont été décernées pour ces forces. Et je peux inclure un étaient près de dire que nous sommes d'accord ne sait pas afin que je puisse éliminer ces règles qui n'ont pas de note. Essentiellement, cet exercice devrait nous permettre de ramener une règle par cours. Dans cette règle, nous devrions avoir le grade le plus élevé et le plus bas enterré pour n'importe quelle particule, bien
sûr. Donc, ce steak, par
exemple, cours avec I d un le plus haut grade attribué jusqu'à présent est 100 le plus bas est 35. Et donc nous voulons un principe qui est la plus haute période de cours sur DLewis grec comme je suis sûr que nous avons compris. Mais je sais que chaque fois que nous allons faire un agrégat sont une
fonction mathématique dont nous avons besoin plus grandi de près. Donc nous disons, cours I d Andi, parce que nous allons faire une fonction agrégée en classe, alors nous n'avons pas besoin d'inclure la note ici et le groupe par. Donc, si je vois des mocks, alors c'est la fonction d'agrégat qui ramène le plus sont la valeur la plus élevée veut que le regroupement a eu lieu. Donc, si je cours cela, alors nous verrons que le cours i d un apporte environ 100 cours I 80 à 90 95 59. Mais bien sûr, ce n'est pas tout. Nous avons satisfait à l'exigence d'obtenir le plus haut. Non, nous devons faire le plus bas. Et pour obtenir le plus bas est simplement en utilisant le fraiseur de fonction si méchant, d'accord. Et donc quand il le groupe par cheval, je vais dire, OK, quelles sont les notes ? Rendez-moi la valeur la plus élevée donnée, mais la valeur la plus basse. En outre, vous me rendez compte d'une tendance que la plupart de ces fonctions d'agrégat ne fonctionnent qu'avec des nombres parce que vous savez que vous ne pouvez pas trouver le nom de la marque et le nom moyen, mais alors, bien sûr, comme des cônes, en fait n'est pas biaisé vers n'importe quel type de données, car count est littéralement juste de garder une trace sur la présentation d'un nombre hors nombre occurrences. Très bien, donc quand nous avons des marques et des moyennes, s'il vous plaît n'utilisez que des valeurs numériques là. Et donc quand nous courons ceci où vous nous voyons que nous avons 135 96 avant. C' est donc une façon agréable et propre de ramener un rapport sur chaque cours sur ce score le plus élevé ou le score le plus élevé sur le
score le plus bas. Donc, vous pouvez aller de l'avant et jouer avec la moyenne sur max et, comme toujours, voir, amusez-vous.
27. Fonction d'agrégat SUM: Hey, les gars, dans cette vidéo, nous regardons la fonction agrégée ou le scénario aujourd'hui est de
ramener le nombre total de crédits effectués par chaque étudiant sur DSO. Nous devrons être un peu créatif ici parce que pour obtenir ces données aura besoin orteil voir les informations des étudiants. Nous verrons les informations du cours parce que notre table de chevaux contient le nombre de crédits en
hors-parcours . Tout cela est combiné au sein de la stable d'inscription. Nous aurons donc besoin de données provenant de trois points de contact différents pour se former sur des agrégats, vieux put. Et donc pour moi
, zéro est notre table d'inscription. Donc, je sélectionne étoile parmi les inscriptions, puis je commence à ajouter ce dont j'ai besoin. Je sais que je veux des détails sur les étudiants. Donc je vais juste dynamiser la table des étudiants. D' accord, d'avoir fait cet inter drame sur les étudiants. David, je sais que je vais devoir entrer dans le cours est stable. Bon, maintenant j'ai une fête complète sur les mains. Donc, nous avons des données provenant des trois tables et de la salle et des étudiants sur les cours et non, nous pouvons commencer à filtrer sur ce qui est le plus important pour nous d'avoir une idée de l'ancien mot. Donc, nous voulons voir le nombre total de critiques qui mangent étudiant fait cela hors cours. On ne sait pas qu'on a besoin des cônes de crédit. Donc, voyez ce nombre de grands et nous allons aussi probablement vouloir un étudiant nommé depuis artiste déjà énergisé. Allez-y et idiot dans notre colonne pour le nom complet sont. Et donc j'ai modifié ma cour. Je veux apporter le nombre de crédits sur et les étudiants nom complet et hors pire. Vous pouvez simplement ajouter de jolis titres à ceux maintenant. La prochaine chose que je veux faire hors cours est le groupe, donc je vais juste regrouper par sur ce que nous voulons acheter est n'importe quelle colonne que nous avons inclus dans notre sélection. Je dois donc regrouper par prénom, regrouper par nom de famille, et je m'arrête en paix. Ensuite, je suis et il met une séparation par virgule et je dois grouper par le nombre de notes. Maintenant, vous voyez que cette liste a diminué parce que peut-être notre à Mme prendre plus de 13
cours de crédit , et donc il est de deux eux ensemble et bon et vrai groupe par mode. Mais le fait est que notre travail n'est pas terminé, parce que ce que nous voulons faire est de trouver un nombre total de crédits pour les étudiants. Et donc nous devons employer notre fonction agrégée appelée certains. Ce qui,
en fait, c'est que pour tous ceux que votre groupe me donne le total pour que je puisse juste augmenter le nombre de crédits à l'intérieur. Certains sur si vous travaillez a commencé à crier quand j'ai inclus le nombre de crédits. N' entendez pas le groupe d'ici là. Tu avais raison. Donc, parce que nous sommes sur le point de faire l'agrégat sur un certain nombre de crédits, je n'ai pas besoin d'inclure le nombre de crédits dans le groupe en fait, je ne devrais pas inclure dans les gigaoctets. Et donc cette requête me donnera en fait combien de crédits de fonctions faisant maison n'importe quel point de crédit Troy fait. Andi, etcetera, etcetera sur Tout cela est basé sur la table des inscriptions, parce que l'état d'inscription garde une trace des classes que chacun fait. Donc le groupe achète. Ils disent que chaque élève que je les regroupe. Andi, je résume les données supplémentaires, qui dans ce cas est le nombre de crée en ramenant cette fille, et c'est essentiellement tenir les travaux de la fonction agrégée. J' espère que vous vous amusez avec elle et expérimentez avec elle. Présentez un autre scénario. Le fichier de script est déjà inclus avec cette vidéo sur. En fonction des données que vous possédez ou de la façon dont vous concevez votre base de données, n'hésitez pas à l'expérimenter et à l'utiliser.
28. de SQL de vue: Hé, les gars, bienvenue. Dans cette vidéo, nous allons commencer à regarder les vues de base de données. Aucun d'entre vous dans une structure de base de données n'est fondamentalement une table virtuelle dont le contenu est défini par une forme quelconque de carrière. Il y a plusieurs façons d'expliquer ce qu'est la vue. Certains états de table virtuelle disent que c'est juste sur l'expression abstraite d'une requête ou de la
représentation d'une requête. Au contraire, je veux dire, vous obtiendrez différentes définitions, et c'est basé sur la perspective. Mais en fin de compte, fondamentalement, toute définition essaie de voir la même chose. Il s'agit d'une représentation des données d'une ou plusieurs tables sans interroger réellement la table . Donc, certains hors des utilisations de vous serait comme la mise au point et de simplifier, peut-être pour la perception personnalisée d'un utilisateur hors des données dans la base de données et en standard dans ce signifie simplement si nous sommes, vous savez, y compris 34 tables dans une carrière qui doit représenter des données. Au lieu de cela, hors d'avoir à chauffer ces tables directement, nous écrivons cette carrière une fois sauver c'est une vue. Et puis, à partir de là, quiconque a besoin de ce genre de leader peut accéder à la vue. Une autre fonctionnalité importante de vous est Il est utilisé comme mécanisme de sécurité parce que nous ne voulons pas nécessairement que les utilisateurs puissent accéder directement à la table ou aux tables. Donc, nous créons juste une vue sur ci-dessous pour accéder à la vue pour voir les données. Il est également en lecture seule afin qu'ils ne puissent pas manipuler les données en manipulant la vue que vous pouvez seulement avec modifiée. La requête sur la vue est juste une représentation ou une manifestation de cette requête. C' était donc une bouchée. Andi, sur mon écran,
tu vois que les bases de données de l'école sont ouvertes. Andi. Une fois qu'il est ouvert ou étendu, nous voyons qu'il y a un dossier ici appelé View. Donc, nous allons juste orteil pratique, pas dossier sur Aller de l'avant et créer une nouvelle vue. Ainsi, la vue hors mots est relative à la base de données sélectionnée, de
sorte que la vue est créée à l'intérieur d'une base de données. Mais cela étant dit de vous pouvez inclure des tables d'autres bases de données. Donc, même si elle peut être locale à la base de données scolaire, s'il y en avait une autre, c'était une table dans une autre base de données que nous voulions inclure dans une requête. Nous pouvons réellement accomplir tout cela en publiant une vue qui représente tous ces
points de données de toutes ces bases de données. Mais pour l'instant, on va rester simple avec l'Irak. Cliquez sur Vues sur Cliquez sur Nouvelle vue, qui ouvrira ensuite l'éditeur de requête Microsoft SQL Server Management Studios. Donc, la première chose qu'ils demandent ceci est quelles tables voulons-nous inclure dans la requête sur. Donc, en fin ,
une fois
de plus, la vue est juste une manifestation hors des résultats d'une requête. Donc d'abord, nous avons orteil droit ou construire. D' après. C' est la première fois qu'on voit le rédacteur en chef et je peux te le dire, non ? Non, je ne suis pas très vers que ce quelqu'un pour vous montrer les bases. Je ne vais pas avancer, mais ouvert à savoir que nous avons écrit de plus en plus de carrés avancés quelqu'un pour vous montrer
comment construire une requête. Une carrière de base de cette vue pour obtenir bien, désolé de cela interfère pour obtenir une vue construite sur cette carrière sur. Ensuite, je vais utiliser un hors du cours qui aurait écrit dans les temps précédents sur construire une vue basée sur cela. Très bien, alors c'est Clinton. Vous si personnellement, nous sommes à la table que nous savons que nous voulons pour cette carrière, donc laissez-nous probablement prendre des cours sur les étudiants. Je vais juste cliquer sur les cours, maintenant sur le bouton de contrôle et cliquer sur les étudiants hors cours si vous voulez. Pour eux, Ali pouvait simplement les sélectionner. Aussi pris, sélectionnez autant ou aussi peu que vous avez besoin. Une fois de plus, je ne fais que sélectionner des étudiants sur les cours et je vais cliquer. Ajouter, puis en arrière-plan. Vous voyez, ça crée une sorte de représentation des tables. Une fois que j'ai fini avec ça, je peux cliquer sur Fermer. Vous remarquerez également que vous pouvez créer des vues basées sur d'autres vues, car si nous avions des vues, vous auriez pu les sélectionner pour être incluses dans le bâtiment de carrière. Et ils ont aussi des fonctions et des civils. Donc pour non, je vais juste aux cours étudiants sur infliger des vêtements, qui aura ensuite ces deux. Mais ce n'est pas ce dont j'ai besoin. J' ai besoin d'inscriptions parce que ceux-ci n'ont pas vraiment une relation, donc je vais en ajouter un autre qui pourrait probablement un médicament directement peut vider l'espace cliquez ajouter une table, et je vais inclure les inscriptions parce que cela en fait lier ces deux tables ensemble. On y va. Donc maintenant, nous voyons ces relations et je peux les réorganiser pour que je les regarde plus facilement. Non, le point de vue que je veux est à la pointe. Demandez aux étudiants d'avoir le prénom sur le nom de famille de n'importe quel étudiant. Je vais également inclure le code de cours Onda nom du cours auquel l'étudiant est actuellement inscrit. Très bien, donc cela sera rendu possible parce que comme vous le remarquez lorsque vous cliquez ou cliquez sur ces colonnes , vous verrez que le puits cette section est modifiée en fonction de ce que vous sélectionnez ou de sélection sur . La requête est en cours de modification et ils génèrent toutes les jointures internes et toutes ces choses pour s'assurer que toutes les données dont nous avons besoin sont représentées correctement. Maintenant, nous pouvons prévisualiser tout ce travail en cliquant avec le bouton droit dans l'espace vide et nous pouvons cliquer Exécuter SQL sur les résultats de l'ADN Être apparaîtra en bas de notre écran nous montrant que vous savez ce que cette requête produirait. Donc ce sera la même chose que nous écrivons que l'acquisition d'une fenêtre nucléaire, Andi l'exécutant, et ensuite nous verrions exactement quelles données reviendraient. Donc ces données sont essentiellement ce que je veux voir, Andi. Encore une fois, nous pourrions jamais dans cette requête par nous-mêmes, certains éloignés il met en évidence ce clic droit , le
copier sur, puis ouvrir une nouvelle requête quelque part pour aller dans une nouvelle carrière sur investissement, pour le coller afin que nous puissions nous asseoir dans un plus grand écran. Qu' est-ce qui a été généré exactement à l'époque ? Je vais juste à l'ancien pour dire peu pour qu'il tombe mieux à l'écran. Très bien, donc je l'ai juste formaté un peu et nous voyons ici où il sélectionne les colonnes et vous remarquez en disant, db o dot étudiants. Donc c'est mal avisé. BBL représente le nom de la base de données, qui est école sur. Puis les étudiants amarré prénom étudiants pensaient cours que ainsi et à travers tout cela et ceci est fondamentalement une requête commune interne que nous aurions regardé. Il suffit de joindre deux tables pour que nous puissions obtenir toutes les colonnes pertinentes. Très bien, donc nous sélectionnons parmi les cours, mais nous sommes à l'intérieur des inscriptions et des étudiants pour que nous puissions obtenir des étudiants en quatre et des
cours pour et bien sûr, les inscriptions étaient cette table de liens entre les deux. Le point de ceci, cependant, est que ce carré est un simple il. Eh bien, c'est juste une requête select sur elle peut ne pas être la requête la plus simple au monde, mais ce n'est pas la plus compliquée. Mais le fait est nous ne voulons probablement pas que les orteils réécrivent ceci ou exécutent tout cela chaque fois que nous voulons voir ces données. Donc, je suis retourné à notre conception de vue. En fait, on peut concevoir cette carrière, mettre à la norme. Et comme, par
exemple, nous avons le prénom et le nom serait passé par des alias, donc je peux en fait simplement utiliser le constructeur carré et mettre un prénom L S o avec qui viennent
avec un nom de famille F majuscule avec un capital L sur un cours appelé avec un rapide Depuis cours marqué sur Dwell, nous pouvons laisser titre, mais remarquez ce qui s'est passé dans la cour que je mets dans les palais dans cette forme de grille ou le chaume, une forme que la cour en fait, les installations ont été modifiées, tout cela. Et donc encore une fois, je peux exécuter des carrières, distraire les fuites dans l'espace vide, exécuter de la coriandre, et je vois que les résultats semblent plus agréables pour la consommation humaine. Je sais donc que je suis satisfait de ce point de vue. Je peux cliquer, enregistrer bien, je peux cliquer, Enregistrer ici, ou tout simplement utiliser Contrôle s sur mon clavier sur. Ensuite, on me demandera de donner un nom à la vue afin que je puisse donner à celui-ci
des cours d'étudiants . Alors nommez cet étudiant des cours de soulignement sur. Je suggère que vous ayez dit que vous suivez le même genre de convention de dénomination sans espaces et ainsi de suite. Comme Corden avec les tables. C' est ma suggestion. Donc les étudiants soulignent les cours et nous cliquons sur OK, puis cela aurait enregistré ou afficher. Non, Si nous revenons à notre dossier de vues Andrew seul, alors nous verrons cette construction ou cet objet appelé Étudiant sur les cours de score. Mais tu te demandes probablement,
OK, OK, ouais, c'est bon. Non, j'ai créé une vue. Alors quoi ? Sachez que la pertinence hors de la vue est qu'une fois de plus, je n'ai pas les orteils exécuter cette énorme carrière chaque fois que je veux voir ce genre de Donc je
vais juste exécuter cette fois et ensuite nous pouvons regarder je suis désolé. Nous pouvons regarder les jeux de résultats sur,
puis, alternativement, alternativement, sachez que j'ai une vue qui exécute réellement cette carrière de toute façon. Je peux savoir, il suffit de sélectionner dans la vue pour que je puisse dire sélectionner l'étoile de Et puis mon point de vue est appelé Étudiant sur les cours Score. Rappelez-vous, c'est une table virtuelle. Donc, le fait qu'il existe pas de moyen qui signifie que je peux l'interroger en le disant. Commençons par ce point de vue. Ce qu'il fait vraiment, c'est exécuter cette énorme carrière en arrière-plan. Mais tout est encapsulé dans l'expression étudiant sur les cours de score. Donc, si j'exécute ça, alors vous voyez que j'obtiens le même jeu de résultats. C' est donc une belle façon de simplifier la représentation de vos carrières. Vous avez d'énormes carrières, et vous avez probablement besoin de générer des rapports sur la place off, vous savez, droit dans l'énorme requête, puis en essayant de voir si le classement trimestriel et en essayant de le trouver chaque fois que vous devez Exécutez-le. Vous pouvez en fait simplement l'écrire, créer une vue sur, puis exécuter des instructions select sur cette vue. Aller de l'avant sur le truc amusant, c'est que je peux faire tout le filtrage et toutes ces choses
fantaisistes. Je peux rejoindre l'interview de données orteil une autre vue, même à une autre table si j'ai besoin orteil. Mais le fait est, c'est un peu un bon moyen de simplifier la représentation des données. Maintenant, soyons un peu plus compliqués. Et si les administrateurs de mon école me demandaient de fournir un rapport montrant tous les élèves avec des sujets dans lesquels ils sont inscrits sur l'enseignant afin que je doive construire sur cette requête sur le tout venir ? Ce serait,
bien, bien, plus de géants intérieurs. Et depuis que je viens d'écrire, la carrière sur la place est quelque chose que nous avons fait avant ça. Donc ce n'est pas le cas. Cela ne devrait pas être trop loin, mais comme vous pouvez le voir, c'est un peu plus à cette requête que la dernière. Donc, le fait est que nous nous sommes assis. On a écrit la carrière. Nous sommes finalement arrivés à un point où nous sommes satisfaits de la requête de décalage des résultats. Non, je ne veux pas exécuter cette carrière à chaque fois, chaque semaine ou chaque semestre. Je ne veux pas que les orteils courent. Je ne veux pas courir le risque d'enregistrer ce fichier et de potentiellement perdre ce fichier. Donc, ce que je vais faire est de faire cette requête en avoir deux options qui peuvent prendre le carré, avoir écrit et ensuite passer aux vues sur puis un clic droit, créer n'importe quelle création d'une nouvelle vue, allez dans le concepteur de vue, puis le coller ici en voyant tout cela. Je suis déjà épuisé. Donc, je vais utiliser un script et créer la vue à la place. Donc, j'ai tout ici, mais puis au-dessus de la sélection. Je peux réellement exécuter une commande create ici dans les scripts qui vont juste créer la vue sur la vue définie comme cette carrière sur laquelle je viens de passer tant de temps à travailler. Donc, ce que je vais dire est quelque chose que je crée vue. Et bien sûr, vous devez utiliser des instructions d'utilisation si vous ne l'êtes pas. Si vous n'avez pas encore sélectionné la base de données, vous devrez utiliser l'instruction use. Tu vas te montrer ce qui pourrait être mis en attente pour le résoudre ? Et ce n'est pas vraiment un problème. C' est juste une prise de conscience. Si j'utilise l'instruction use, alors je dois dire, Allez, puis exécutez mon instruction create. Très bien, donc avec tout le but, je vais finir avec une erreur de syntaxe qui semble être votre 11. Donc, bien sûr, il est parti et puis vous voyez crée vue. Tu lui donnes un nom. Donc, ce serait des étudiants sujets comme les touristes hors. Ce que vous voulez donner à vos vues des noms que quand je le regarde, je peux avoir une idée de ce batteur à attendre. Dois-je interroger cette vue ? Très bien, donc je dis créer une vue sur lui donner le nom, puis voir comme et ensuite ce qui suit est la carrière qui définira les vues. Rappelez-vous, une fois de plus d'utilisation, sont
vraiment juste une manifestation hors d'une requête. Donc, j'ai écrit cette carrière et au lieu de sauvegarder le fichier afin que je puisse l'exécuter et courir le risque de le perdre sont le supprimer par inadvertance. Ce que je vais faire est juste de le créer en tant que vue et après avoir fait cela, il sera attaché à ma base de données. Donc la prochaine fois que j'aurai besoin de voir ce genre de rencard, je m'inquiète juste de la vue. Donc, quand j'exécute ce script tel qu'il est, accord. Donc, on a une erreur ici. Et il semblait que l'ordre par clause est invité dans les vues sur certains autres objets sur la raison de cela est que Eh bien, pour une raison quelconque, la vue ne garantit pas que les données vont revenir dans cet ordre. Donc, nous avons commandé par titre moi juste rafraîchir ordonné par cours, titre sur qui est une opération illégale à l'intérieur de la création de la vue. Donc je suis juste Linda. Rappelez-vous que pour non, certains juste en fait juste été pour cuisiner cela, ne veulent pas le supprimer. Il suffit de le couper. Je vais aller de l'avant et créer les vues. Je sais que ma vue est créée avec succès. Je ne vois pas de différence ici. Je peux simplement cliquer sur les vues, actualiser le dossier sur. Non, je vois que mon point de vue, qui est des conférenciers de matières étudiantes, est un projet de loi. Donc, en utilisant ce bien, je vais ouvrir un nouveau fichier de requête sur. Alors ce que je ne vois pas, c'est sélectionner l'étoile de Yes, vous l'avez deviné. Les étudiants sur le sujet de partition sur la partition, les conférenciers. Très bien, donc c'est la vue que je viens de créer. Et une fois que je fais avec cela et exécute, il va l'amener exécuter cette énorme carrière que je viens d'écrire en arrière-plan et faire ressortir tous les résultats. Pas de préavis. Rappelez-vous que nous avions d'abord une commande par et qu'elle était commandée par le titre du cours, et je l'ai enlevée parce que c'est illégal. Dans une vue. Cependant, je veux que mes ensembles de données, dont la vue revient à être ordonnés par. Voilà ce que je peux faire. Je peux dire sélectionner l'étoile de mon point de vue sur puis commander par et puis je peux dire Voir ce titre servir ? Mais je l'ai coupé donc l'espace, cette boîte que j'ai besoin de faire un peu réfractaire que je ne peux pas commander par graine dehors. Donc, il n'y a pas d'objet dans le carré appelé C. Mais il y a un objet où il n'y a pas d'objet, aussi appelé titre. D' accord, donc c'est un autre point important basé sur notre carrière d'origine, où nous regardions les colonnes du tableau pour leur donner des alias. D' accord, rappelez-vous, nous avions semé Title See est un alias pour les cours pour les cours stables, accord, donc je verrais ce titre. Mais ensuite, nous lui donnons le titre de cours alias. Donc, pour toute la durée de vie de cette requête. On aurait pu, vous savez, faire d'autres opérations sur les noms de colonnes que j'aurais pu commander par titre C Doc parce qu'il connaît le nom de la colonne. Maintenant, la vue, qui est une représentation virtuelle de qui ne connaît pas les besoins de la colonne d'origine. Ça ne s'en fout pas. Tu ramèneras ça ici. Ça ne se soucie pas de la colonne d'origine. Cela signifie qu'il sait que quand je sélectionne l'étoile les colonnes, je connais notre professeur prénom, professeur, nom de famille sur ce que vous voyez venir ici dans les titres de la colonne, un k a. les alias. Donc, cela signifie que si j'avais besoin de commander par l'une de ces colonnes qui aurait obtenu moins . Je dois commander par le nom réel hors de la colonne que je vois apparaître une fois que j'ai couvert cette vue. Donc, en d'autres termes, je dois passer commande et je dois utiliser ma brise carrée parce qu'il y a un espace dans le
titre des scores et ensuite j'exécute sur. Ensuite, vous voyez qu'il commande par. Donc la ligne rouge listée ici. Vous n'avez pas besoin de vous inquiéter à ce sujet, mais c'est ce que l'utilisateur voit. C' est ce qu'ils savent. Titre du cours est le nom de la colonne afin que nous puissions commander par le nom hors de la colonne que nous voyons revenir une fois de plus, nous pouvons toujours ajouter ou étaient proches. Je peux dire que nous sommes sur Defy seulement voulu CS 100 par exemple. Je peux voir un cordon de cours étaient une fois de plus, Carré de course marqué parce que c'est le nom de la colonne que la vue sait
cour de cours est égal orteil sur la chaîne CS 100 et puis je l'exécute sur le terrain pendant le travail. Donc, tout ce qui a été utilisé jusqu'à ce stade avec l'écriture de carrières sur des
tables de base de données, c'est très possible. Désolé. Tout ce qui a été utilisé avec la sélection des données des tables est possible avec une vue. Cependant, lorsque nous avons plusieurs tables et des carrés plus complexes, nous n'avons pas le pied continu là, passer du temps et les écrire. Mais une fois que nous les aurons parfaitement, nous pouvons les dire en vue d'aller de l'avant. Il suffit d'écrire une simple sélection par rapport à cette vue pour voir les données. Maintenant, avec tout cela étant dit et fait, tout cela était juste à propos de créer la vue pour que vous puissiez être géré. Sinon, nous pouvons aussi dire Alter View. Alors peut-être devrions-nous changer la vue elle-même. Nous devions changer la requête afin que nous puissions dire alter view sur Nous avons ce nom de vue. Donc, il ressemble vraiment de la même manière qu'un créatif vous. Mais nous changeons juste crée l'autel des orteils sur. Ensuite, ce qui ferait juste modifier cette carrière et ensuite exécuter sur n'importe quel changement doux sera reflété dans la prochaine fois que nous exécuterons contre cette vue art d'une manière similaire. Nous pouvons effectivement faire un clic droit sur la vue sur Aller à la conception, ce qui fera apparaître cet éditeur de requête. Alors rappelez-vous que les étudiants sur ce sujet sur la partition des conférences. C' est celui que nous avons créé par un script, mais il peut être ouvert et modifié à l'intérieur de l'éditeur View. Alors peut-être qu'on ne voulait pas un de ces titres. Peut-être que le parcours marqué n'était plus nécessaire. Donc, si je vais réellement au cours est stable et Manticore a marqué, alors il le supprimerait. Et puis si j'économise, alors cela aurait modifié la vue de toute façon. C' est vrai ? Il y a donc deux façons de modifier votre point de vue. Une autre chose que vous pouvez faire pour gérer de vous est probablement renommer de sorte que les étudiants sur la partition des conférences sur les sujets de partition. Désolé, je l'ai lu dans le mauvais ordre, mais le fait est que c'est un long méchant. Et si on voulait juste que ça s'appelle l'inscription des étudiants ? Donc, nous pouvons Archer juste clic droit sur la vue ici dans l'éditeur et juste cliquez sur renommer et cela le rend créditable. Nous pouvons le renommer ici ou si je voulais le faire par script ou froid ressemblerait pour dire exact,
ce qui est un mot clé que nous allons apprendre quand nous avons commencé. Peut démarrer les procédures. Andi, c'est court pour l'exécution. Ensuite, nous avons SP sur le score. Renommer SP est un peu comme un tell pour la procédure stockée p procédure stockée. Nous avons donc une procédure stockée qui vient avec SQL appelé Rename. Donc, c'est S p sur un écran iam et puis nous voyons quel objet il est que nous voulons renommer, ce qui est une vue par ce par le nom des étudiants sujets conférenciers sur. Nous voulons que le nouveau nom soit les inscriptions des étudiants sur. Ensuite, lorsque nous exécutons ceci sur, revenez à notre dossier de vues et actualisez. Ensuite, nous voyons l'étudiant sur le sport. Les inscriptions n'est pas le nom off ou V, ce qui signifie que si nous exécutons la carrière précédente Select étoile de l'étudiant sur le sujet de score sur ce mot, laissez jurés. Ensuite, cela nous donnerait une erreur qu'il n'y a pas d'objet sous ce nom parce que le nouveau nom de cette vue est les inscriptions d'étudiants. Donc si j'ai fait ce changement et que je l'exécute à nouveau, alors on est de retour là où on a commencé. Non, j'espère que vous savez que l'utilisation de l'utilisation est une théorie sensée. C' est très flexible. Vous pouvez toujours modifier la requête qui génère la vue sur. En fin de compte, vous ne voulez pas toujours que les utilisateurs avec la base de données utilise ou même les utilisateurs d'applications orteil interagissent directement avec leurs tables tout le temps, donc vous voulez probablement construire votre application. Notre propre point de vue sur chacun d'entre vous est Brondby, une carrière soigneusement conçue pour ces interférences particulières, ou même juste pour,
vous savez, vous savez, accès et l'utilisation de bases de données
générales. Vous ne voulez probablement pas que les utilisateurs aient à s'asseoir et savoir où trouver quel champ sur 23 tables, sorte que vous en tant que développeur de base de données, Vous pouvez simplement faire le script, créer la vue sur chaque fois qu'ils veulent ces données. Tu ne l'as pas fait. Il y a une vue. C' est une vue. Tu vas chercher ces données. Tenez ça. Vous avez blessé cet autocollant vidéo pour plus.
29. Fonctions SQL de valorisation sur Scalar: Hey, les gars dans cette vidéo vont commencer à regarder les fonctions en SQL sur la conception ou propre compétence sont
fonction valorisée . En un mot. Une fonction nous donne ah, construire à travers lequel nous pouvons exécuter du code potentiellement complexe en utilisant une simple ligne hors cour exemples de fonctions que nous avons construites auparavant serait comme nos fonctions agrégées . Les marques signifient quelques cônes, etc. Mais il y a des dizaines de fonctions dans SQL sur dans cette vidéo, nous allons regarder certaines d'entre elles. Commençons par un que nous connaissons. Donc, dans une fenêtre nucléaire, je suis allé faire ma déclaration d'utilisation habituelle de l'école sur. Ensuite, dans la ligne suivante, je vais faire une sélection des instructions maintenant. Que se passe-t-il si je voulais sélectionner la plus haute cupidité qui a été attribuée à un étudiant dans l' étable
d'inscription ? Rappelons que dans notre école DB Quand nous
regardons, nous avons une inscription Steve, qui a quelques colonnes, une off, qui est la cupidité. Donc, nous voulons la plus grande cupidité qui est actuellement à l'intérieur d'un. Donc, ce que nous ferions est en fait utiliser sur un quatre fonctions agrégées sous la forme de marques off, en passant la cupidité de valeur sur, puis dire à partir des inscriptions. Ce serait alors une fois exécuté, il était la plus grande cupidité qui se trouve dans toute l'équipe. Remarque n'utiliserait pas un groupe par. Nous ne sommes pas en train de regrouper nos records pour trouver quoi que ce soit. Nous cherchons juste à leur trouver les marques de la même façon que nous pouvons regarder et trouver le minimum. Ce sont des exemples de fonctions, donc les marques signifient qu'elles sont toutes des fonctions. Nous avons le nom de la fonction sur, puis à l'intérieur des brèches, nous avons la valeur qu'il nécessite pour remplir son fonctionnement. Un autre exemple d'une fonction serait obtenir. Si je voulais l'heure exacte souche de mon accord de course que je peux dire sélectionner, obtenir la date ouverte et fermer brise. Et quand j'exécuterai cela, je verrai que j'obtiens la date de congé quand j'ai exécuté Selon la milliseconde, la différence entre get date sur le Max et Mina et d'autres fonctions d'agrégat est que le while, ils retournent différents types de valeurs. Il s'agit donc d'une valeur d'heure de date. Où est Max et moi et retourner une valeur numérique. Mais aussi être Il ne me demande pas de passer un paramètre. Si vous vous souvenez quand j'ai tapé des marques et de la brise ouverte, j'avais besoin de fournir une certaine valeur qu'il utiliserait pour faire. C' est des calculs. Non, dans le contexte, hors des dates sur le temps, nous pouvons utiliser une autre fonction sous la forme d'année, qui prend un paramètre. Donc, si je voulais que l'année ait obtenu les dates, je voulais juste l'année que la valeur de l'année pour la date. Ensuite, je peux utiliser une autre fonction appelée année et en passant cette valeur comme autorisée. Donc, j'ai tapé dans la brise ouverte de l'année, et puis vous voyez que les gestionnaires pour vous me faire savoir qu'il faut un jour temps pour être transmis. Andi renvoie une valeur entière. Donc, quand je mets le get beat, qui retourne à la valeur de temps à l'intérieur de la liste des paramètres de l'année, alors l'année va regarder les dates qui sont transmises sur le retour juste, une valeur entière qui représente la valeur de l'année dans cette journée. Alors et exécutez, je ne reviens que 2019. Maintenant, en passant à partir de ces exemples, nous pouvons toujours voir la liste ou une bonne liste de ce que SQL a à nous offrir en termes de fonctions en allant dans la base de données en entrant dans le dossier des capacités du programme que expansion ou le titulaire des fonctions et puis une fois de plus, en élargissant notre dossier de fonctions système à l'intérieur des fonctions système. Vous voyez toutes les différentes catégories hors fonctions qui sont intégrées dans SQL pour nous sur je
vais jeter un oeil aux fonctions de chaîne. Donc, à l'intérieur des fonctions de chaîne, vous remarquez que vous en avez une pour la différence. Vous en avez un pour la voie sur si vous survolez chacun. Il vous dit en quelque sorte ce que cette fonction est utilisée quatre itinéraires pour obtenir suffisamment d'informations. Si vous continuez à développer, vous voyez le paramètre requis pour utiliser le dysfonctionnement. Vous voyez qu'il nécessite au moins avoir arc notre expression entière expression et il retourne. Un virus est environ pneu. Très bien, donc vous pouvez toujours obtenir des informations sur les types de fonctions dont vous avez besoin pour aider à manipuler la présentation à partir de vos données. Vous savez, ils peuvent venir un moment où vous avez besoin de votre propre fonction pour retourner quelque chose peut-être plus
spécifique à la table , sauf si génériquement le système fonctionne sur, alors c'est là que nous devons commencer à définir notre propre échelle sont fonction valorisée. Voyons qu'à tout moment, nous voulions appeler une fonction qui rendrait réellement le plus élevé convenu dans la classe. Nous l'avons fait plus tôt, nous avons écrit une carrière sur Ce que nous voulons faire est de transformer cette instruction de requête en une fonction de sorte que lorsque nous appelons cette fonction, elle exécute la carrière inconnue pour nous, mais renvoie la valeur appropriée. Donc, ce que nous devons faire est sous les fonctions que nous allons à l'échelle, sont des fonctions valorisées que nous faisons un clic droit sur. Ensuite, nous allons de l'avant sur le scaler de clic. Les fonctions valorisées sont dans certaines interfaces. Vous pouvez voir nouveau, mais quiconque CRE contrat comme des fonctions, puis aller à nouveau et puis vous sélectionnez compétence sont fonction
valorisée. Ils mèneront tous les deux à la même chose. S' il vous plaît, non. Après avoir fait cela, vous recevez une fenêtre de requête sur. Ça a l'air compliqué, plus compliqué et ce que nous avons regardé. Mais si vous regardez bien, vous remarquez que ce n'est vraiment pas que c'est vraiment très simple. Tout ce qui est vert ou a à Dutch est au début de la ligne. C' est un commentaire sur il y a vraiment juste des guides pour vous dire quoi faire, où donc nous pouvons le regarder et nous voyons qu'il est vraiment juste de générer le modèle pour l' instruction
create qui est utilisée pour créer une fonction. Donc nous avons juste besoin de passer par la suite avoir peur de remplacer quoi que ce soit à l'intérieur
des crochets d'angle par nos propres données. Donc, pour le nom de l'auteur, il est toujours bonne pratique orteil venir au tribunal pour voir qui l'a écrit quand il a été écrit sur ce que exactement cette fonction est sur le point de faire maintenant. Quand nous arrivons à la syntaxe réelle, vous voyez que nous avons la syntaxe créer la fonction de mot-clé sur puis les crochets d'angle dans les crochets d'angle là-bas, suggérant que nous devrions spécifier un nom de fonction afin que je puisse tout remplacer dans fonction. Nom sur. Je vais voir devenir plus haut. D' accord. C' est donc le nom de notre fonction. Donc, une fois de plus, nous avons des fonctions qui se rapprochent comme une année plus tard. Obtenir les dates seront définir notre propre qui va voir, obtenir le plus haut, accord. Ensuite, nous voulons commencer à ajouter des paramètres. Non, la directive pour le paramètre est que nous utilisons un signe à lui donner un nom sur puis un type de données. Encore une fois, nous remplacons simplement tout ce qui a des crochets d'oncle autour d'elle. Quelqu' un pour aller de l'avant et remplacer ce bloc de crochets d'angle ouvert et fermé de texte par le nom d'un paramètre sur. Eh bien, si j'obtiens la meilleure note d'une table, je n'ai vraiment pas besoin de paramètre parce que j'ai la plus grande cupidité dans la table. Donc, comme nous l'avons vu ici avec get bit get, ils n'ont pas besoin d'un paramètre pour transporter le remorquage, accomplir son devoir. Donc, compte tenu de notre contexte, nous n'avons pas besoin d'un paramètre à exécuter ou de devoir. Donc, puisque nous n'avons pas besoin d'un périmètre, nous devons en fait supprimer ce bloc prend pour voir créer le téléphone affiché avec ce nom sans paramètres requis. Et puis nous passons à dire le type de retour. Donc, le type de retour est le type de données hors qu'il est censé retourner, donc une fois de plus, obtenez le qu'il renvoie à ce moment-là. Cependant, année retourne sur entier si nous obtenons la plus grande cupidité que notre type de retour serait, je crois que Destin Mile, basé sur le fait que le type de données Ford a accepté, Y
a-t-il cet homme et je peux toujours Retourne juste. Validez cela en développant les tables et il est en fait flottant. Pas ces mois-ci. Je vais utiliser float de sorte que la valeur qui est notre fonction obtient des écrans hauts un bateau à retourner est type de données
à flot. Et puis le tribunal continue là où il dit comme alors commencer, et puis, entre le début à la fin, mots clés vont effectivement faire du travail. Donc, la première chose que nous voulons faire est la variable claire pour le temps de retour. Maintenant, les variables comme un stockage temporaire, nous créons une variable, nous lui donnons une valeur, et ensuite nous pouvons utiliser cette variable juste pour suivre cette valeur, sont manipulés cette valeur dans ce que nous voulons sur, stocker en fait pour la période que nous en avons besoin. Donc, dans ce cas, nous devons définir notre valeur de retour qui sera sujette à changer plus tard. Mais à la fin de la journée, il sera retourné. C' est la valeur que nous allons récupérer, ou la fonction ainsi ou la déclaration claire exige que nous donnions ou verbalement un nom sur puis un
type de données . Donc, une fois de plus, la convention de nommage pour toute variable ou paramètre est qu'elle commence par une connexion at. On me le donne, et je vais lui donner ce signe. D' accord, puis la variable de retour a trop le type de retour sur le téléphone indiqué. Donc, cela signifie que cette variable doit être à flot car alors elle va stocker coulé . La valeur sur elle va être retournée, donc il doit être une valeur flottante trop en arrière ce que la fonction, le type de
données ou l'attaque de date de retour est. Ensuite, nous allons sur orteil attribuer la valeur toe cette variable basée sur l'ancien, repousser une requête. Donc, l'instruction suivante continue en disant, Ajouter les instructions SQL de T pour calculer la valeur de retour ici. Donc, je vais juste enlever une fois de plus tout à l'intérieur du support d'angle sur. Ensuite, je vais commencer par écrire l'instruction SQL, puis je vais vous montrer comment vous allez réellement affecter la valeur maintenant, puisque je veux seulement l'avidité de l'inscription, alors je n'ai besoin que de sélectionner la cupidité comme colonne sur. Ensuite, ça vient des inscriptions, mais ensuite j'ai besoin d'être un peu plus créatif parce que j'ai vu la plus haute note. Donc, comme on vient de le voir, on verrait en fait la cupidité simulée des inscriptions. Donc, la sélection des marques avidité à partir des inscriptions va effectivement regarder alors civil romain une fois et retourner le plus haut. D' accord. Donc, puisque cette colonne ou cette fonction nous donnera la plus grande cupidité, nous devons être en mesure d'
assigner n'importe quelle valeur revient comme cette valeur de retour de mocks creed ici en remorque, notre variable at cupidité sur la façon de le faire est de dire, sélectionnez sur. Ensuite, nous voyons que la variable est égale orteil la colonne qui va stocker la valeur que nous devons retourner. Donc, une fois de plus, nous disons que la variable select est égale colonne orteil ou type de retour de fonction. Quoi que ce soit qui apporte la valeur de notre déclaration select, nous faisons cette affectation à l'intérieur de l'instruction sedate, puis le six démon continue à dire à partir des éléments et si nous filtrons, mettrons l'usure et le groupe et toutes ces choses. Mais le fait est, quelle que soit la déclaration que nous écrivons pour notre échelle, notre fonction ne devrait renvoyer qu'une valeur qui peut être attribuée à notre variable de retour qui a été déclarée à l'intérieur de notre fonction. Une fois que vous avez fait cela, les fils de
boulangerie qui ont mis cette instruction SQL ensemble et fait cette affectation, alors la dernière étape consiste à retourner cette variable. Donc les variables qui signent la cupidité Donc nous revenons au signe avidité. Donc, une fois de plus, nous créons une fonction. Donnez-lui un nom. Nous définissons les paramètres. S' ils sont connus, nous rencontrons cette zone vierge avis. C' est un commentaire, donc il n'a aucune incidence. Que ce soit là ou non, nous définissons le type de retour de la fonction. Et puis au début et à la fin, nous faisons tout ce que sont les calculs. Les instructions sont nécessaires pour obtenir plus de valeur à retourner, nous devons
donc déclarer que je retourne la variable, lui donner un type de données, exécute une requête SQL qui est un aller et calculer ou de quelque façon que ce soit, récupérer le qui étaient désirs de retourner. Ensuite, nous allons lui assigner toe sont variables, donc c'est une variable select est égale à n'importe quelle colonne ou construction va retourner cette valeur sur. Ensuite, nous allons de l'avant et retournons qui retourne variable. Après avoir fait tout cela, nous savons qu'il exécute. Rappelez-vous que tout cela n'était vraiment qu'une grande déclaration de fonction de création. Donc rien n'a été fait jusqu'à ce que nous exécutions une fois que nous faisons cela et nous voyons que toutes les commandes ont été sans succès,
Ensuite, nous pouvons revenir à notre dossier de fonctions Gerald propre dans notre compétence sont
le dossier des fonctions valorisées , et nous verrons alors que notre fonction n'est pas accessible à l'heure actuelle. Si nous voulions faire un ajustement, cette fonction devrait alors changer la création de l'autel orteil sur, puis faire les changements et ensuite exécuter, et il mettrait à jour la fonction. Selon a Quels que soient les changements que nous avons faits, je suis satisfait de la fonction telle qu'elle est activée. Alors j'ai besoin de le tester. Donc, je veux voir si ma fonction retournera 100 qui, basé sur le Guerrero la dernière fois était la plus grande cupidité dans nos tables de base de données. Je retourne à ma fenêtre de trimestre sur Dai dit le contexte hors école sur Alors ce que je vais
faire est de sélectionner puis spécifier ma fonction plus haut obtenir la plus grande cupidité sur parce que la fonction j'ai besoin de mes accolades. Je remarque que je n'ouvre et ferme que parce que nous ne l'avons pas défini pour exiger des paramètres. Si j'exécute ceci, j'aurai une erreur car il dira que ce n'est pas un nom Foshan intégré reconnu sur. Pour quelque raison que ce soit, SQL exige ou recommande que nous mettions ce point d b o lorsque nous appelons nos propres fonctions. Donc, DB ou ancré sur alors ou le nom de la fonction résoudra cela. Et quand j'exécute, on voit qu'il revient. Une valeur à ce sujet est 100. Si je voulais en définir un autre pour obtenir le plus bas accord, alors je ferai la même chose. clic droit sur les fonctions de valeur de scaler aller de l'avant dans la vue d'édition sur Effectuer toutes les modifications nécessaires pour obtenir le plus bas accord. C' est donc mon défi pour vous. Réécrivez cette carrière pour obtenir la note la plus basse sur Retirer le nombre d'inscriptions sur juste, vous savez, devenir
fou. Pratiquez un peu avec les fonctions. Maintenant, je pense à un scénario où je voudrais probablement obtenir quelque chose d'autre un peu plus en unique sur Disons que je voulais obtenir le nom du cours par I D. Donc, si vous allez dans la table des cours et jetez un oeil aux données que nous voyons que nous avons sur 11 cours et ils ont tous des titres, le nombre de crédits et l'école de cours. Mais je veux une fonction que quand je transmets une valeur, je reçois mais juste le titre hors cours. Vous savez que si je voulais voir cela, je devrais voir où puis dire que je D est égal à sur puis peut-être dire cinq sur puis exécuter cette requête sur dix Désolé, Mettez son idée de cours, pas je D alors quand j'exécute cette requête, je reçois spark dotnet Donc tout ce que je veux est le titre lorsque la fonction est fournie la valeur i. D. Donc, je vais aller de l'avant et créer une nouvelle fonction d'échelle sont valorisées, et il va ramener les mêmes modèles que nous venons de passer par. Ensuite, les changements que nous apporterons seront assez similaires. Donc, la fonction va être appelée get course par I d. Ou peut-être que je devrais être plus explicite. Obtenir le nom du cours ou le titre par I d obtenir cours étouffé par je mange. Donc, vous voulez toujours être aussi descriptif que possible dans votre nom de fonction afin que
quiconque vient le long puisse regarder la fonction et dire, Oh, oui, je sais ce que cela fait. Donc nous obtenons le titre du cours par I D. Et si nous l'obtenons par I D. Cela signifie
que nous devons fournir un moyen pour quelqu'un de nous donner un I d. afin que nous puissions savoir exactement quel titre nous devons retourner. Et donc, dans ce scénario, nous avons besoin d'un paramètre, très certainement quelqu'un pour modifier cela. Les crochets d'angle à l'intérieur sur. Je vais commencer par un qui est défini le nom du programme. Donc, je vais dire que le nom de Param serait bien sûr que je d. Donc je vois à Sign on, donnez-lui un nom et c'est le nom du paramètre sur. Ensuite, j'ai besoin de spécifier l'heure des données, et si je l'obtiens par i d. Et les idées sont généralement entières que cela signifie que le type de données est désactivé. Le paramètre doit être entier car j'ai besoin de spécifier que vous devez passer un entier qui agira comme ma recherche vers le haut I d. Lorsque j'exécute ma requête. Non, non, que nous avons passé en revue les paramètres la prochaine chose est un type de retour. Donc si je retourne le titre hors du parcours, c'est un mot. Ensuite, mon type de retour peut être dans ce temps, il doit être environ charge. Donc, je vais dire environ char sur. Je ne connais pas la durée, bien
sûr, compris ? Pour dire 50. Peut-être que nous pouvons en fait juste voir environ char sans aucune taille spécifique. Et ce serait un peu plus élastique. Enseigné sur la chaîne de longueur est retourné. Donc, après avoir défini
la fonction, le nom, les paramètres et le type de retour, nous passons au début. Ensuite, dans cette section, nous déclarons notre retour. Variable orteil de quelqu'un, retirez ce support d'angle, bloquez la cour et appelez ce titre sur. Je vais lui donner le type de données environ char Next. Je dois spécifier l'instruction select, donc j'écoute réellement écrire la carrière en premier. Ensuite, nous faisons la mission. Je vais donc sélectionner le titre des cours, puis hors cours, en sélectionnant le titre des cours. Et si je fais ça, ça s'inquiète dans une autre fenêtre de la chorale. Si je ne dis pas sélectionner le titre dans la table des cours, alors c'est ses Autodata. Il semble donc que nous obtenons 11 titres, donc ce n'est pas suffisant, parce que nous n'avons vraiment besoin que d'un titre basé sur l'idée qui est fournie sur. La seule façon de filtrer serait de dire où le cours I D est égal à une certaine valeur. Dans ce cas. Si je dis un, nous récupérons HTML. Mais alors nous ne saurons pas toujours cette valeur une fois un faible l'utilisateur pour fournir cette valeur, c'est pourquoi nous leur donnons le paramètre. Donc, cela signifie que si je suis sur le point de m'assurer que nous trouvons le cours, cela correspond à l'idée qui est fournie et nous devons voir que nous sommes ou des
idées de cours de colonne égale à la valeur que le Param Eter a. Donc, dans ma fonction, je veux dire, sélectionnez le titre des cours et ensuite continuer et voir où le cours je d. Sur le cours que je d remarque n'est pas celui avec ce signe. Où cours I D qui appartiennent aux cours de table Star est égal à ce signe sur. Ensuite, nous appelons dans les paramètres,
Donc, quand nous faisons cours, je d de la table est égale orteil cours d'exercice idée de cours. Nous voyons où le cours I D dans la table est égal orteil quelle que soit la valeur que ce paramètre a donc que nous pouvons nous sentir satisfaits que ce carré ramènerait ce que nous voulons. Nous ne pouvons pas faire l'affectation où nous allons attribuer le titre à partir de la table toe notre variable de
retour que nous avons déclarée plus tôt. Donc, je vais juste dire sélectionner au signe sur ma variable de retour sur Non nous n'avons pas à
les appeler titre. Nous n'avons pas à leur donner les noms exacts. En fait, j'ai tendance à préférer ne pas utiliser les mêmes noms parce que pour moi, c'est moins déroutant. Donc j'aurais pu appeler ce nom. Donc je vais appeler ça Neil. Donc, ma variable de retour est le nom de quelqu'un toe attribuer la valeur de titre provenant de ma
table de cours dans la base de données à ma variable de nom quelqu'un pour dire select at sign name est le
titre de pied égal . Et puis nous voyons les lignes rouges disparaître parce que, non, il se sent satisfait que nous assignons la valeur toe ou la variable de retour. Et puis, à la fin de tout cela, nous voulons retourner la valeur qui est revenue à l'intérieur de cette affectation. Non, que nous n'avons pas cette requête et nous nous sentons satisfaits. Ou encore ce carré pour créer la fonction que nous pouvons exécuter pour créer réellement la fonction. Et puis nous pouvons valider qu'il a été créé en une seconde en entrant dans notre base de données pour
programmer,
capacités,
fonctions fonctions fonctions valorisées par programmer,
capacités, capacités, le tueur. Et si vous êtes déjà là, vous pouvez toujours actualiser et vous verrez vos nouveaux objets apparaître. Obtenez cours intitulé par I d. Si vous développez, vous allez vous montrer département de l'inscription sur vous faire savoir ce qui est attendu de vous. Donc si je retourne à mon expérience, acquérir une fenêtre où ? Bon, donc c'est là que nous sommes et puis je dis Select sur puis rappelez-vous, nous avons besoin de la base de données ou sur. Alors je sélectionne. Laisse-moi m'assurer que je reçois les écritures du genou. Je peux simplement glisser et déposer de l'explorateur d'objets vers la fenêtre de la chorale. Et ça va juste générer ce tribunal pour que je puisse éviter les fautes d'orthographe. Et puis j'essaie d'exécuter cette déclaration. Ça ne marchera pas parce que tu me diras qu'il n'a pas pu naître. En d'autres termes, il semblait que j'avais besoin C'est une fonction que je dois mettre sur mes accolades. Et si j'essaie de recommencer, il ne fonctionnera pas. Parce que ça va voir que je n'ai pas assez d'arguments. Sont les paramètres fournis pour le téléphone, fils Toe travail. J' ai donc besoin de fournir un paramètre sur. Rappelez-vous que dans la définition, nous avons dit que nous avons besoin d'un paramètre de type int quelqu'un pour transmettre une valeur sur. Je vais en voir un. Ensuite, nous exécutons. D' accord. Et là, ça a marché. Je ne suis pas sûr de ce qu'était cette époque. Impossible de trouver les procédures Sir, mais ils sont travaillés. Ok, donc on voit qu'on a une petite flèche parce qu'on a fait une erreur de calcul. Avec la taille off, l'onduleur ne sera dit inviter ou non, inviter notre 50. Donc, il retourne littéralement juste une valeur parce qu'il est par défaut à une. Nous devons donc modifier notre fonction pour retourner à Foshan. Disons qu'on l'a fermé et qu'on a continué. Nous pouvons toujours juste faire un clic droit sur la fonction dans l'explorateur d'objets et cliquer sur modifier et il lancera automatiquement ce cordon de fonction alter que j'étais à ce que j'ai mentionné plus tôt. Donc nous ne sommes pas de retour dans la même carrière, comment nous devons modifier la fonction. Donc ce que je vais faire, c'est que je vais voir qu'il revient. Environ pneu 50 sur qui sont variables. Pour être retourné est également inviter notre 50. Parce que même si je disais le type de retour pour inverser notre 50, il serait toujours tronqué si je ne définissais pas la valeur de retour la variable de tour. Désolé d'être aussi environ 50 shar. Donc, vous voulez vous assurer que le type de variable de retour est beaucoup leur type de retour autant que possible. Très bien, sur afin que nous puissions exécuter cette requête parce qu'elle a vraiment été acquise pour modifier la fonction. Nous avons apporté nos changements et nous sommes satisfaits que nous exécutons alors que cela a réussi. Donc, quand nous retournons à notre fenêtre de requête sur divulguer certaines de ces fenêtres ici, nous retournons à fenêtre de
notre chœur et nous exécutons cette fonction une fois de plus. Ensuite, je vois le nom complet ou le titre du cours remontant appelé HTML. Si je change cette valeur, nous avions 11 cours. Donc, cours numéro 11 sur puis j'exécute à nouveau. Il y va dans la recherche sur la valeur qui a été transmise, et nous récupérons l'intelligence artificielle. Si j'ai regardé le 110, alors je ne m'attends pas à ce que rien revienne. Tout ce que je reçois est un non, car il n'y a pas de cours dans la base de données avec le i. D 110 sur C'est tout pour le scaler. Fonctions valorisées concept assez simple. Nous pouvons simplement toujours créer ces fonctions qui nous aident,
vous savez, vous savez, écrire des requêtes plus rapidement ou à exécuter des chorales à la volée dans des carrés plus complexes sans avoir les orteils compliquent ce quart réel. Nous pouvons simplement créer une fonction droite, la requête que nous voulons faire en arrière-plan, puis appeler la fonction chaque fois que nous avons besoin de cette valeur particulière, donc le sujet suivant serait sur les fonctions de valeur de table sur qui obtient un peu plus excitant, mais je vous conseille, ou je vous encourage à faire un peu de pratique sur celui-ci, créer des fonctions dans le contexte hors de ceci ou de l'une des bases de données et peut-être avoir travaillé avec juste explorer toutes les possibilités
30. Fonctions SQL de la table en ligne et de la valeur de la: Hé, les gars, bienvenue dans cette vidéo va regarder les fonctions de valeur de table et plus spécifiquement
dans les fonctions de valeur de table en ligne. Maintenant, j'ai ici une fenêtre de choeur qui a déjà un modèle pour créer une fonction sur j'ai eu ce feu en allant orteil sont le dossier des fonctions, puis aller à la table des fonctions valides, clic
droit et puis dire que je voulais une nouvelle fonction de valeur de table en ligne que ou fonction créer, hum, carrière Onda. Comme vous pouvez le voir, il est à peu près un modèle semblant. Si vous êtes habitué à créer une compétence, sont fonction valorisée il ya quelques différences, donc nous allons juste aller de l'avant et créer une fonction que nous explorons. La différence est maintenant la première chose que nous voulons commencer à faire est de remplacer les blocs texte entre crochets d'angle par le centre approprié. Donc, la première chose que nous voulons faire est de supprimer ce crochet d'angle pour le nom de la fonction sur, mettre le nom de notre fonction, donc je vais voir la plage de cupidité. Donc, cette fonction sur sont en fait juste en remorque. Mettez votre description pour que nous sachions avec quoi nous travaillons. Donc, notre fonction aujourd'hui est de renvoyer des notes entre deux valeurs. Donc, le nom de la fonction est plus grande portée. Et si nous voulons revenir entre deux valeurs, alors nous avons besoin de paramètres définis. Donc ils nous font déjà savoir que nous avons probablement besoin de paramètres. Dans cet exemple, ils ont une suggestion sur la sédition interne de l'enfant. Mais bien sûr, c'est ou fonctionne pour que nous puissions faire ce que nous voulons. Quelqu' un pour définir le premier paramètre comme la première cupidité sur le premier. cupidité aurait un type de données hors flotteurs et puis parce que j'ai un autre permis, j'ai une virgule et puis je continue défini le deuxième périmètre, qui serait deuxième avidité sur. Il a également un type de données off float. Donc, ce que cette fonction va faire est d'accepter une valeur convenue sur puis une autre cupidité d'une autre valeur alors les attentes que nous allons retourner une table si remarqué que le type de retour est déjà défini pour nous dans l'échelle. Notre fonction. Nous devons vous dire quels rendements nous voulions dans une fonction de valeur de table. Ce sera une table pour des raisons évidentes. D' accord, donc c'est à notre tour une équipe de sens qui rend nos résultats malades. Donc, nos résultats que nous avons l'intention de retourner est un résultat qui pour toutes les notes entre la première année qui a été passé dans le 2ème 1 qui a été passé dans. Ensuite, ils nous ont demandé de définir la carrière de sélection qui retournera les ensembles de données
demandés . Donc, je vais écrire une requête qui va retourner toutes les notes de ou l'inscription stable , qui tombent entre ou dans la plage off. Ce que nos valeurs fournies ici sont en première année et fille de valeur est fourni en deuxième année. Quelqu' un à dire, sélectionnez accepté à partir des inscriptions, puis il ya deux façons d'écrire le filtre. Donc évidemment, je dois filtrer toutes les grilles. J' ai besoin d'un étaient proches de le faire là-bas. Deux façons d'écrire ce travail, quelqu'un pour faire celui que vous pensez probablement où je suis allé voir où convenu est supérieur ou égal à, et puis nous pouvons voir d'abord Andi convenu. La cupidité est inférieure ou égale orteil en deuxième lieu convenu. Donc juste là, nous aurions facilité, facilité arrangement. Nous sélectionnons toutes les notes des inscriptions, mais nous filtrons toutes les grilles où les valeurs qui retournent, euh, doivent être supérieures ou égales à l'eau Volley est entrée en première année. Il doit également y avoir un pied inférieur ou égal tout ce qui est arrivé en deuxième année. Non, c'est le premier Twitter sur un coréen. n'y a rien de mal à cela. C' est parfait. Mais alors SQL nous donne un mot-clé appelé entre cela aussi nos maisons pour accomplir ce genre de logique avec moins de cour afin que je puisse réellement écrire juste sous cette ligne. Nous sommes d'accord et puis voyons entre donc nous voyons où grade entre le corps un sur Val ITU de valeur un serait notre première année, puis nous avons le mot-clé Andi et ensuite la valeur à serait ou deuxième année. Donc ces deux déclarations étaient à peu près de la même manière. C' est à vous de décider. Celui que vous trouvez plus facile et plus intuitif. n'y a pas de problème. Vous choisissez celui qui est le mieux pour vous et vous l'utilisez. Donc, pour cette vidéo, je vais appuyer sur une longue presse devant les déclarations entre les deux. Donc, je vois une sélection de grade à partir d'un moment de croissance où convenu entre la première valeur qui a été fournie en tant que paramètre sur les deuxième volatiles fournis comme un périmètre. Et c'est littéralement tout ce qu'il y a. C' est vraiment juste écrire une requête. Andi. Certaines personnes pensent des fonctions de valeur de table comme des vues para motorisées parce qu'ils ont
parlé de vues où la vue est juste d'exécuter enquête sur le retour de ce que nous voulons retourner. Donc, dans cette situation, nous obtenons réellement les paramètres de passage des orteils , ce
qui peut être fait, et vous ne savez pas ce que l'utilisateur peut vouloir voir à ce moment-là. Mais nous facilitons leur désir en leur donnant le paramètre sur. Ensuite, nous nous assurons juste que nous fabriquons le Corina nous qu'il renvoie des données relatives aux paramètres qu'ils veulent. Bon, donc je vais juste exécuter ça sur. Il va aller de l'avant et créer la fonction, que je peux valider en allant aux fonctions violettes de table, rafraîchissant sur l'expansion plus complète si nécessaire. Donc, je vais aller de l'avant et créer un nouveau dossier de carrière, Onda, utiliser mes déclarations d'école d'utilisation, et puis je vais sélectionner et me rappeler que nous devons voir un DVD bien point sur puis le nom de la fonction quelqu'un en désaccord . Range, puis j'ai besoin de passer deux paramètres parce que cette fonction a été définie pour prendre deux paramètres. Donc un grand et des cigarettes. Donc, disons, par
exemple, nous voulions trouver tous les élèves qui se sentent sur la note de passage pour notre école est de 50. Ça veut dire que quelqu'un entre un et 49 ces sentiments. Donc, si je voulais voir le grand INGE, je peux voir une virgule 49 sur leur Quand j'exécute qu'il fait une instruction serpent et puis,
il semblait, il semblait, ne peut pas trouver une grande portée. Bon, donc j'ai mal tourné ça et je suis désolé pour ça. Ce que nous devrions faire puisque c'est une fonction de valeur de table, j'ai été tenté de l'appeler comme une fonction d'échelle sont valorisées. J' ai besoin d'une table des fonctions que j'ai réellement besoin de voir select star à partir de maintenant, puis la fonction. Et puis une fois que nous faisons cela, nous obtenons ou les résultats souhaités. Donc, une fois de plus, si c'est une fonction de valeur de table, nous devons appeler cette fonction comme si nous avions affaire à une table. Mais alors nous obtenons des paramètres de passage des orteils qui, implicitement basés sur la définition off ou la fonction, géreront n'importe quel carré complexe en arrière-plan. Donc, si je voulais voir tous les étudiants qui avaient sont toutes les notes qui tombaient dans la catégorie de passage Donc tous les étudiants passant dans les marchés passés 50. Ça veut dire que je veux quelqu'un avec 50 sur 100 droite ? Donc, si j'exécute ceci, alors je vais voir que j'ai un bon nombre d'étudiants ont certains élèves avec des races qui se transmettent. Ensuite, j'ai cinq qui sentent maintenant tous ceux qu'ils ne retour avidité. Et il n'y a aucune limitation sur les colonnes qui peuvent être retournées. Donc, si je voulais mettre à jour un peu cette requête, je peux vraiment revenir en arrière, non ? Cliquez dessus, goto, modifier, puis cela générerait la commande de fonction d'autel pour moi. Et puis je peux modifier cette requête pour ramener d'autres colonnes. Faire intérieur rejoint Andi, rapporter autant de données sur les étudiants et leurs notes que j'en ai besoin. Donc, vous pouvez aller de l'avant et écrire cette fonction, puis peut-être modifier ou créer une autre fonction qui a un grand, plus de détails basés sur ce que vous pensez être nécessaire pour que quelqu'un puisse voir. Basé sur l'ensemble de données que nous avons
31. Fonctions de la table à plusieurs états: Hé les gars, bienvenue dans cette vidéo va chercher à créer une fonction de valeur d'instruction multiple dans msde SQL. Maintenant, dans la fonction d'instruction de table intérieure, nous exécutons. Une requête a renvoyé les résultats sous la forme d'une table. Cependant, dans la table d'instructions multiples, fonction
valorisée aura en fait l'effet de levier sur la définition ou sur la construction de table sur la flexibilité d'exécuter plus d'une carrière pour remplir la construction stable avant que nous enfin le retourner. Maintenant, pour créer une de ces fonctions, nous avons juste besoin de revenir à notre dossier de fonctions de table, cliquez avec
le bouton droit sur. Ensuite, nous verrons une nouvelle fonction de valeur de table multi-instructions qui fera apparaître ce modèle qui sera utilisé pour guider notre développement. Donc, dans le modèle, nous commençons avec notre déclaration de fonction create, puis nous donnons la fonction et nommons quelqu'un pour voir toutes les personnes sur toutes les personnes, ce qui signifie que nous allons écrire quelques déclarations qui retourneront toutes les personnes actuellement dans notre base de données de l'école sur les personnes seraient étudiants et les enseignants savent afin la
différence entre les deux, je devrais mettre une certaine forme de drapeau et étant donné que je n'ai pas besoin d'un parlement est de
connaître toute la personne. Donc, je suis en fait juste allé à ne pas utiliser de paramètres. Andi, si vous voulez voir un périmètre de travail, vous pouvez regarder dans l'échelle, sont des fonctions valorisées, vidéo ou la table des fonctions de valeur vidéo. Et puis vous avez une idée claire de la raison pour laquelle nous avons besoin de paramètres et pourquoi nous n'avons peut-être pas besoin paramètres plutôt que d'aller de l'avant pour trouver toutes les personnes à l'école. Db nous n'avons pas besoin de paramètre, donc nous allons continuer et ensuite nous voyons que le type de retour est hors table de type. Mais rappelez-vous, nous remplacons tout à l'intérieur des parenthèses si instables sur les parenthèses ici , nous dirions réellement ce signe, donnons un nom à la table qui va être retournée. Donc, notre table ou variable hors type table qui sera retournée sera des personnes. Non, les données que je veux récupérer sur les personnes seront leur prénom. Leur nom de famille, la date à laquelle ils ont rejoint l'école ainsi qu'un drapeau pour voir s'ils sont des trucs ou des professeurs. Donc, en définissant ma table, je peux réellement définir tous les problèmes, tout comme je le ferais en créant une table pour aller dans le SQL une structure sauf dans cette situation. Ma table est un virale sur la encore une fois, les règles s'appliquent néanmoins. Donc, si je passe par les crochets d'angle, je suis allé définir la colonne un, puis lui donner un type de données sur. Ensuite, puisque j'aurai plusieurs colonnes, j'utilise une virgule jusqu'à ce que j'arrive à la dernière colonne. Donc, la première colonne que je vais avoir ici est le prénom sur la détection pour le prénom. Que je vais être divertissant sera environ Shar 50 et ensuite j'ai ma virgule sur. Ensuite, le prochain serait le nom de famille sur celui-ci sera également dans Hvar Char 50. Maintenant, j'ai vu que je voulais trouver les DEET faites jointes aussi bien que si elles
sont des étudiants sont des choses, donc le suivant serait il rejoint sur le joint je donnerais probablement le temps et puis le dernier serait ah, type personnel. D' accord, donc le fait est, une fois de plus, je définit mes propres problèmes dans ma propre table appelée les personnes de signe. Donc, ce n'est qu'une grande table de type off variable qui ressemblera à une table fonctionne comme une table sur être retournée à partir de cette instruction comme une table. Donc je mets juste le type personnel en dernier. Je vais laisser ceci comme environ char 50 parce que nous allons utiliser celui-ci pour imprimer le mot trucs ou étudiants en fonction du statut de la personne. Maintenant, l'instruction suivante dans ce modèle est de remplir la variable de table avec la rose pour vos résultats. Donc ce que je vais faire est d'insérer deux fois dans cette table. Je suis allé insérer dans l'écurie tous les étudiants, et je vais coder en dur les étudiants de la valeur afin que le type personnel soit toujours étudiant pour tous les étudiants. Et puis je vais faire la même chose pour le prof. Stable mais dur, en mettant le mot enseignant comme drapeau de type personnel afin que je puisse écrire, insérer dans. Nous savons tous que l'insert dans nous lisons insérer en lui à la table étaient insérant dans. Dans ce cas, notre table est sous la forme hors de variable du temps. L' équipe était notre table ou 10 T Blore table variable est à des personnes signées sur. Ensuite, ce que nous voulons faire est une instruction select, donc je peux simplement enchaîner un insert en instruction sur une instruction select afin que
quoi que cette instruction select revienne, juste aller directement dans l'équipe. Donc, je n'ai pas besoin de définir toutes les colonnes, puis d'enregistrer des valeurs et à son tour, de
trouver les valeurs autant. Buck, si j'ai les résultats que je peux juste bien froid Andi, sentir
dynamiquement la table basée sur ce qui revient. Bon, donc dans ce cas, je vais juste voir sélectionner sur puis à partir de la table des étudiants. Et je vais juste expliquer aux étudiants qu'ils vont juste me rafraîchir. J' ai des prénoms. Je peux en fait simplement glisser et déposer de l'objet Explorer Prénom, virgule, nom de famille sur la note. Si vous le faites de cette façon où vous ne spécifiez pas les colonnes, vous devez vous assurer que tout ce que vous sélectionnez dans cette instruction, beaucoup est la structure de colonne hors de la table. Vous insérez dans l'utilisation de cette méthode. Donc, nous le définissons comme prénom. Nom de famille a rejoint et type personnel. Donc, je suis inséré dans les personnes sur. Ensuite, je sélectionne le prénom tellement au prénom, le nom de famille trop du nom de famille sur puis joint serait contextuel. Il semblera que l'inscription l'a fait sur. Puis après cela, je vais orteil hardcore la valeur. Ah, étudiant. D' accord, donc encore une fois, je choisis quelque chose qu'ils n'ont pas encore défendu. Mais ce sont des instructions de sélection. Ça vient d'une table, non ? Donc je choisis cette vallée de la table qui varie de la table, ce corps de la table. Mais je suis également autorisé à sélectionner une valeur codée en dur si je le voulais. Sur ce cœur, la valeur de
balle correspondra au temps personnel. Et puis, après avoir défini toutes les valeurs ou les colonnes que je veux sélectionner hors cours, vous savez que nous devons finir par voir à partir de maintenant puis les étudiants sur. Alors toutes les lignes rouges disparaissent parce que même si c'est bon. Non, je sais ce qu'il a commencé. Certains sélectionnant le prénom. inscription au nom de famille a fait tout des étudiants, et je suis aussi juste thé dur. Donc, je suis une sorte de tricher par ce dur, citant les mots étudiant dans cet ensemble de données provenant de la table des étudiants Onda insérant que la personne Alors laissez-moi juste exécuter cette section juste pour vous montrer à quoi cela ressemblerait. Donc, le prénom de sélectionner, nom de famille dans un moment dates. Je vais juste exécuter ça. Et puis vous voyez ici que cela ramène tous les étudiants de la base de données avec leurs dates d'inscription. Mais tout le monde a le mot « étudiants embauchés ». Refroidir. Peu importe la montre. D' accord. Donc, quand il va dans la table des personnes, tous les étudiants de la base de données auront cela comme valeur de type personnel ? Non, juste assez. Je vais juste répéter toute cette déclaration pour le professeur,
Steve, Steve, parce que j'ai dit que je voulais connaître toutes les personnes de l'école et toutes les personnes de l' école seraient celles qui enseigneraient à nos élèves. Donc, au lieu d'essayer d'écrire une requête complice et de se joindre et d'essayer de comprendre qui est ce que je peux juste voir si je sais que je choisis à partir de la table des étudiants, alors cela va être un étudiant et veulent sélectionner à nouveau à partir de l'acier enseignant sur. Je change le drapeau cette fois pour le professeur Andi. Je sélectionne les mêmes données de l'enseignant stable sur je peux juste étendre L'enseignant stabilisé. Assurez-vous que je reçois mes noms de colonnes en partie sur vous. Voir ici, je fais référence aux dates d'inscription, ce qui est faux. Le profond de sa dette rejoint selon l'écurie de l'enseignant. J' ai donc besoin de rectifier ça. Andi, je vais juste le traîner depuis que je l'ai déjà. Andi, arrange-toi comme Kama. On y va. Donc prénom,
nom de famille et ils ont rejoint Venant de l'écurie du professeur sur étaient dur
type personnel d'embarquement . Donc, cela signifie à chaque fois que cette fonction est exécutée, elle définira cette table appelée personnes avec ces quatre colonnes sur, puis procédera à l'exécution de ces requêtes qui remplissent la table de la personne avec des données alors à l'individualité juste renvoie. Donc, quand il revient, il retournait ce que leurs valeurs sont allées aux personnes. Non, pour terminer
cela, c'est la création Acquérir une fois de plus, nous devons exécuter, donc il va réellement créer la table. Et je reçois une erreur ici où il semblait que j'ai quelques incohérences avec le nombre colonnes fournies quelque part je vois l'erreur. Donc je n'ai pas mis la virgule après le joint. Alors nous avons essayé encore une fois sur l'exécution de leur wiggle Hermann terminé avec succès sur puis une fois contre valider, je peux juste aller à la table des fonctions valides et rafraîchir sur Quand je développe, je vais voir une grande gamme répertoriée là. Donc, nous allons essayer et exécuter un orteil de requête, Voir ce qui revient de cette fonction sur grondement avec des fonctions de valeur de table que vous devez
sélectionner à partir du thé de la lumière de fonction. C' était une table. Donc je vais juste sélectionner l'étoile d'Ondas Adeeb, vous remarquez plus de centimètres. Nous n'avons pas mis en mémoire de piranha Mater nous n'avons pas mis de paramètres lorsque nous
créons une fonction donc il n'y a pas besoin de passer dans un intégrateur de valeur INGE. Et quand j'exécuterai ça, je vois Oh, je suis désolé. J' ai encore besoin de faire la représentation du fait que c'est une bonne fonction. Donc, même s'il n'y a personne qui entre comme si besoin d'accolades ouvertes et fermées pour montrer qu' fonction est activée lorsque j'exécute, cela prendra un certain temps. Je suis désolé d'exécuter la mauvaise fonction. Je devrais regarder toutes les personnes qui ne sont pas de grande portée politique. Donc, nous regardons toutes les personnes donc je sélectionne le départ de toutes les personnes et nous devons toujours faire la représentation pour les brises, même si nous ne passons aucun paramètre et gagnez exécuter. Ensuite, on voit ici que la personne revient dans la base de données. Donc, à ce stade, nous ne savons pas quelle table vient quelque chose de la façon dont nous savons quelle table ou peut déduire quelle table ce
qui vient de son père. Nous mettons ce drapeau de type personnel sur ou les données sont assis. Donc sans cela, nous aurions pu rejoindre ce dissuasion de façon transparente, et tout cela serait un peu caché de nu dans l'ensemble. Nous avons amené les étudiants et les enseignants à revenir en un seul ensemble de données. C' est ainsi que fonctionnent les instructions multi-lignes ou mobiles, les fonctions du corps de
table. Vous les créez juste. Définissez votre table, définissez l'interrogation, remplissez la table avec les résultats. C' est sur le retour. C' est ça. J' espère que vous apprécierez celui-ci
32. Procédures enregistrées: Hé, les gars. Dans cette vidéo, nous allons commencer à regarder les procédures stockées dans Microsoft SQL Server. Ces troisième procédure est à peu près le code SQL préparé que vous pouvez enregistrer et re utiliser à volonté . Les procédures stockées sont d'autres polyvalentes. Vous pouvez les utiliser pour en mettre trop. Effectuer toute opération de foule sur les données. Une fois que vous l'
appelez, vous pouvez passer des paramètres, ou vous pouvez simplement l'appeler la défense. Cela dépend de la façon dont vous définissez qu'il est vraiment activé dans cette vidéo. Nous allons en construire quelques-uns juste pour voir exactement ce qu'ils sont capables de savoir. Pour commencer avec les procédures de magasin, vous vous êtes déjà connecté à votre studio de gestion de serveur, et vous pouvez simplement étendre votre serveur, aller à la base de données et la capacité du programme kowtow juste là, vous voyez , vous pouvez cliquer avec le bouton droit de la souris et cliquer sur procédure stockée. Maintenant, avant même d'entrer dans cela, il est à noter qu'il y a un certain nombre de procédures stockées de systèmes, et si vous développez cela, vous voyez un long long long procédures méfiantes qui sont disponibles pour vous par défaut juste par disposer d'un serveur sécurisé. Cependant, aucun d'entre eux n'est vraiment conçu pour interagir avec la base de données en question, qui est notre base de données scolaire que nous avons bâtie sur DSO. Nous souhaiterions probablement définir des procédures de remuement qui peuvent interagir avec la base de données. Une fois que vous créez une procédure stockée, vous recevrez un modèle sur def. Vous avez fait des fonctions. Ensuite, vous réalisez que ce modèle ressemble beaucoup à des fonctions. C' est presque comme si tu en avais fait un que tu avais fait. La seule différence majeure ici est que dans la fonction de création automatique, il libère la procédure de création. Très bien, mais alors tout à l'intérieur du support d'angle doit être remplacé, tout comme nous l'aurions fait dans les autres fichiers de modèle. Donc, pour cette procédure, je vais l'appeler, sélectionner tous les étudiants, quelqu'un pour remplacer tout ce texte d'un crochet d'angle à un autre sur je
vais juste vous donner le nom. Sélectionnez tous les étudiants. Très bien, alors sélectionnez tous les étudiants et puis quatre étudiants Sillitoe n'ont vraiment pas besoin de paramètres. Non, dans cette section avec d'autres paramètres, Andi ah, paramètre peut être une valeur externe que nous transmettons dans la procédure stockée sur cette valeur pourrait aider à informer les résultats. Donc nous aurions pu sélectionner tous les étudiants sans paramètres contre choisir un étudiant où nous
attendons un appartement, peut-être une idée ou quelque chose qui nous aiderait à diriger notre carrière pour cette
raison spécifique dans cette situation, sélectionner tous les étudiants. Nous n'avons pas besoin de paramètre. Donc, pour cet exemple, je vais effacer toute cette section qui suggère que nous avons un paramètre Andi
donc avoir une procédure de création. Aucun paramètre comme et puis commencer. Donc, après le début couvre le corps, nous n'avons pas les orteils changer cela, moins pas pour cet exemple. Mais alors ce que nous devons faire est de créer des instructions pour ou une procédure dans cette section. Ce que je suis sur le point de faire, c'est de sélectionner l'étoile parmi les étudiants. Nous commençons donc par un exemple
simple et agréable . Donc jamais l'étape de l'étudiant et nous sélectionnons l'étoile des étudiants sur. C' est à peu près tout. Donc c'est tout à créer cette première procédure de magasin une fois, je suis sûr que je n'ai plus de lignes rouges. Je peux toujours aimer exécuter parce qu'une fois de plus, c'est un script et il exécute et crée une commande de procédure. J' ai donc besoin d'exécuter le script à la fin. Donc, je clique sur exécuter, puis vous direz que les commandes ont été accomplies avec succès. Si je actualise ma liste de procédures de magasin, alors je verrai la procédure meister. Sélectionnez maintenant tous les étudiants pour utiliser la procédure de magasin. Et je vais juste ouvrir une nouvelle fenêtre de requête sur. Assurez-vous que j'utilise la base de données scolaire avec laquelle nous travaillons pour exécuter cette
procédure stockée . J' ai simplement besoin de taper le mot exact ou qui est court pour exécuter. Vraiment ? Mais c'est exact sur Ben. J' appelle le nom de la procédure stockée. Donc, il est sélectionner tous les étudiants. Andi, je peux avoir besoin toe qualifier ceci avec les objets db o sur mon objet DVR ou plus support bbo Il sorte off vous ouvre à plus d'options. Si vous pourriez obtenir une erreur sans les erreurs sans le db o dire, pouvons-nous simplement enlever ? Hum donc l'instruction Pour vous assurer que vous n'avez pas d'erreurs, je clique sur exécuter. C' est exactement ça. Il sélectionne tous les étudiants. Maintenant, la chose merveilleuse à ce sujet est qu'il est réutilisable. Je peux choisir l'étoile exacte sélectionner nos étudiants à tout moment, en particulier à partir de la construction d'une application. La plupart des cas d'utilisation pour les procédures de démarrage seraient que vous les utilisez. Alors, comment va la logique métier, ce qui veut dire que vous mettez toute l'intelligence dans les procédures douloureuses. Et vous appelez vraiment la procédure stockée dans votre application lorsque vous avez besoin
de ce type d'opération à effectuer. Donc, c'est un des cas d'utilisation pour les procédures stockées. Pour cette vidéo,
je vais passer par d'autres exemples de procédures hors magasin. Pour cette vidéo, Andi. Donc celui-ci était un sans paramètres. Mon exemple suivant va avoir des paramètres. Je veux en faire un où je vais dire sélectionner un étudiant par Eddie quelqu'un pour revenir à mon dossier de procédures de
magasin, clic
droit,
cliquez sur procédure stockée sur. Ensuite, le nom de cette procédure de magasin serait sélectionné étudiant par I D aan den. Cette procédure aurait un paramètre, donc je vais juste remplacer systématiquement toutes les erreurs dans les crochets d'angle. Donc, la première ère demande un nom de paramètre,
quelqu'un pour l'appeler au signe, parce que dans SQL nous définissons nos paramètres en utilisant le signe at on. Ensuite, le type de données qui est demandé dans la section suivante serait int parce que nous acceptons le I D que nous voulons utiliser pour renvoyer l'étudiant ou trouver les étudiants en question. Donc, j'ai seulement besoin d'un paramètre quelqu'un pour supprimer cette virgule. Je vais supprimer cette deuxième ligne parce que je n'en ai pas besoin. Donc, je crée une procédure d'un étudiant sélectionné par i d en utilisant ce paramètre I d de type dans comme sur. Ensuite, nous commençons la cour. Non, pour obtenir l'étudiant par i d. C'est une déclaration simple, sélectionnez. Vraiment. Je suis sûr que si nous devions le faire dans un carré normal estimé pourrait le faire, donc je vais juste le répéter. Mais dans cette situation, je vais utiliser le I D comme une variable parce que je ne sais pas quelle idée va passer si clairement nous avons orteil la sélection de l'étudiant d'un relatif à la valeur qui est transmise à travers le périmètre, quelqu'un pour voir sélectionner l'étoile. Je remplace la section des supports d'angle et des étudiants de table. Nous sommes donc en train d'ajouter notre filtre. Ensuite, je peux voir à I d. Et puis je verrais au courant de l'i d. Parce que cette double vérification encore, Nous avons la colonne appelée I D. Donc, nous voulons trouver un étudiant où la valeur i d est égale à n'importe quel valuer passant dans M. Procédure. Ainsi étaient-ils la colonne I. D est égale ou via être passé, qui va être stocké à l'intérieur du Parmenter que nous définissons, qui est à i d. Donc ce carré lire Select star des étudiants où I d est égal à quelle que soit la valeur paramètre à ce moment. Ensuite, nous pouvons une fois de plus exécuter parce que c'est que créer un script de procédure. Donc, pour créer la procédure que nous devons exécuter sur,
Ensuite, je reviendrai à mon fichier de script ici où je suis l'hiver d'un autre test afin que je puisse voir exactement que db o sur puis le nom de la procédure sir, qui est select student by I on puis passe dans le paramètre requis. Nous devons référencer appartement ou par son nom, qui, sur la
base de la définition off, notre procédure est à signer. J' ai décidé au signe I d on. Ensuite, je lui donne une valeur donc en dehors d'une idée est égale à trois. Donc je veux notre ça. Je m'attends à ce que lorsque j'exécute cette instruction et que j'exécute ma procédure sir en passant la valeur trois dans le I D. Il exécutera cette instruction select où il sélectionne dans la table des étudiants où la valeur I D dans la colonne est égale à trois parce que c'est ce que je transmets en tant que valeur de périmètre. Et donc quand j'exécute ceci ou j'exécute juste le script entier de sorte que la valeur supérieure, les meilleurs résultats. C' est ma sélection de nos étudiants. Mais alors, si vous regardez en dessous, vous voyez que cela amène les étudiants avec
les les trois. Si je disais 10 et exécuté, alors rien ne reviendrait parce qu'il n'y a pas d'étudiants avec la
valeur i d. sur 10. Donc, le point est, autant de valeurs que je pourrais avoir besoin de passer dans le remorquage la procédure stockée pour effectuer l'opération . Je peux les définir en tant que paramètres. Donc tout est une virgule. Et puis j'ai défini autant de permis est, et les types de données respectifs, comme j'ai besoin sur off, était le dernier n'a pas de virgule sur. Ensuite, nous pouvons effectuer une opération en utilisant la syntaxe SQL qui fait utiliser le permis est que nous le transmettons, donc nous avons fait deux exemples où nous sélectionnons. Faisons un où on insère peut-être. Donc, je vais chercher un nouvel étudiant. Cet étudiant vient à l'école. Le nom est Francis Read Onda. On peut faire d'autres votes. Donc, le fait est, je veux créer une procédure stockée qui me permet d'insérer des étudiants et je ne veux
pas juste l'instruction insert chaque fois que je veux insérer un nouvel étudiant. Donc, je vais créer une procédure de magasin qui fait l'insertion, et il demande juste que les valeurs soient insérées. Donc, une fois de plus, directement dans le dossier des procédures de magasin, cliquez sur procédure de magasin sur Aller de l'avant et modifier ce modèle. Donc, je vais appeler cette procédure stockée insérer étudiant sur. Ensuite, je vais à la liste de tous les paramètres et je vais faire un paramètre. Sa colonne qui sera insérée est si nous regardons en arrière nos étudiants là-bas et je
fermerai tous les sommets inutiles ici. Donc, si nous regardons en arrière, nous savons que les idées sont mises en œuvre, donc je n'ai pas besoin de transmettre. Je dévalue lors de l'insertion. Cependant, j'ai besoin d'un nom de famille, mon prénom, d'une date de naissance et d'inscription. Cela ne signifie pas que je dois créer une procédure qui est prête à prendre quatre valeurs ou quatre paramètres pour quatre colonnes. Donc, je vais aller de l'avant sur défini ces quatre paramètres. J' ai dit quatre, mais j'en ai défini trois. Donc je fais le nom, le prénom et la date de naissance, et je vais vous montrer quelque chose pour que le prochain soit la date d'inscription. Mais je vais concevoir la procédure stockée de telle sorte que le temps ou les données dans le temps où vous avez inscrit l'étudiant ou aurait inséré l'étudiant va être l'inscription. Quelqu' un pour utiliser une fonction pour remplir cette colonne. Je ne m'attendrai pas à ce que vous passiez cette valeur comme paramètre. Très bien, alors finissons la procédure que nous examinons en utilisant la procédure. Donc j'accepte ces trois couleurs, mais j'ai besoin d'en insérer trois. Donc, je suis en train d'insérer. Donc, cette fois, je vais supprimer tout cet exemple l'exemple select. Et au lieu de cela, je vais insérer dans deux ma table d'étudiants. Et puis nous savons que nous énumérons nos colonnes, qui sont le nom, le
prénom, la
date de naissance et l'inscription sur. Je respire juste la ligne et ensuite nous avons les valeurs des mots-clés. Donc, nous savons que nous n'abondons pas notre foule de base. Instructions SQL Parce qu'il reviendra à nous hanter. Nous devons les réutiliser à tout moment. Cependant, en utilisant la procédure stockée. Nous n'avons pas toujours besoin d'écrire cette déclaration chaque fois qu'il y a un étudiant afin que nous puissions l'écrire une seule fois, enregistrer que c'est une procédure et ensuite tirer parti de la procédure. Donc, les valeurs seront la communion de valeur de nom de famille du paramètre. Donc ce serait le nom des actes, en quelque sorte. Le nom de famille est transmis lorsque cela, lorsque cette procédure est appelée, nous avons passé le prénom. Rappelez-vous donc que quelles que soient les valeurs qui étaient définies ici doivent s'aligner avec les colonnes en cours de définition. Donc nom de famille le prénom le prénom le prénom à la date de naissance à la date de naissance le . Ensuite, j'ai vu cela à une façon spéciale de traiter avec l'inscription. Donc, au lieu de passer quelque chose comme les dates d'inscription du périmètre, je vais juste utiliser ma fonction, obtenir qui retournera la date et l'heure d'exécution hors de la procédure. Très bien, donc une fois que j'ai fait ça, fermez-le. Ma déclaration d'insertion est complète sur J'insère dans les étudiants Nom de famille, prénom, date de naissance, inscription il. Andi, je peux juste créer cette procédure donc je clique sur exécuter alors. C' est une nouvelle procédure que j'ai accès à Refresh mes dossiers de Tyler afin que nous puissions tous
les voir . Donc, nous avons inséré des étudiants sur. Nous pouvons toujours développer et voir tous les paramètres qui sont requis sur elle dit qu'il retourne une entrevue. Et cet entier est généralement comme ça. L' un est zéro pour voir si elle a réussi ou non. Alors testons l'exécution de ça. Donc, je vais revenir à ma page de requête de procédure de démarrage sur. Puis je suis allé à une fois contre l'exact sur DB. Tout sur. Ensuite, cette procédure stockée est insérer l'étudiant Andi. Encore une fois, vous pouvez toujours glisser et déposer quelqu'un pour le glisser et le déposer. Juste pour te montrer que tu peux faire ça. On n'essaie pas de l'appeler. Nous avons quelques Procéder jusqu'à quelques paramètres. Désolé que nous ayons eu besoin. On a besoin du nom de famille. Laisse-moi voir si je peux faire glisser ça. Je ne peux pas vraiment avoir à taper celui-là. Donc le nom de famille sur j'ai dit que le nom de famille serait lu. Rappelez-vous que nous avons défini le nom de famille dans notre procédure de magasin comme étant un caractère d'environ. C' est toujours une bonne idée d'utiliser les mêmes types de données que ceux des colonnes. Très bien, donc vous ne voudriez pas passer dans une entrée de stagiaire, insérer dans le remorquage, inviter notre ou vice versa. C' est donc toujours une bonne idée de minty dans ce type de données lors de la définition des paramètres, puis nous viendrons séparer tous les paramètres qui doivent être là. Donc c'est lu sur puis prénom, qui aura la valeur de Francis Aan den, le dernier. Je vais juste briser la ligne pour que nous puissions tout garder à vue. Le dernier serait la date de naissance, et ce n'est pas exactement K sensible non plus. Sur la naissance battue pourrait être 90 95-0 16 bash 18. Très bien, donc je vais juste mettre en évidence cette section sur l'exécution, et quand nous le faisons, nous voyons les commandes terminées avec succès. Non, nous n'obtenons rien d'autre mais que la seule façon de vérifier si cet étudiant a été inséré est d'aller à ma sélection tous les étudiants pour procéder et exécuter. Là, on voit l'étudiant numéro 13. Lisez Francis pour 1995. Et puis si vous regardez bien l'inscription cette valeur,
vous voyez qu' il est un horodatage exact pour l'heure que j'ai exécuté cette inquiétude. Donc, c'est ce que vous pouvez mélanger et beaucoup et utiliser vos fonctions, demandes de renseignements et dans les instructions d'insertion et les utiliser à votre avantage. Donc, ce serait les dates d'inscription. L' étudiant aurait été inscrit exactement à cette date si je voulais obtenir des détails sur seulement cet étudiant que je pouvais juste exécuter. Donc, cet étudiant par I d on, je pourrais juste dire 13 sur, puis exécuter là-bas. Tu récupérerais juste les valeurs pour ces étudiants, euh sur. Alors essayons de mettre une valeur illégale et voyons ce qui se passe. Donc, si je mets des kina alors rappelez-vous, eh bien, ce ne serait pas un bon exemple, parce que alors vous seriez probablement encore essayer de le convertir en un onduleur. Laisse-moi mettre une mauvaise valeur pour la date de congé. Donc j'ai mis deux pour le sac de la date hors bourse afin que nous sachions que la date de naissance de M. ressemble à
un an ,un an ou une fois à la valeur du moment. , Donc je ne mets que le numéro deux. Et puis je suis allé exécuter. Voyons ce qui se passe. Et il dit que les commandes ont été terminées avec succès, et je pense qu'il l'a effectivement accepté et essayer de donner un sens à partir de l'outil. Donc, vous voyez, ici je continue à insérer lu parce que je continue à exécuter le fichier entier et il continue à exécuter la procédure stockée. Donc c'est réutilisable. Je n'ai pas eu à retaper l'instruction insert chaque fois que j'en ai besoin, donc je peux toujours changer toutes ces violences et pour autant d'étudiants
que je veux insérer ces valeurs d'échange, exécutez la commande execute avec la procédure stockée nom, et je reçois que les étudiants dans certains donc une fois de plus commencer les procédures peuvent fondamentalement loger toute sorte hors logique. N' importe quel type de commandes SQL à l'intérieur d'eux. Vous pouvez les utiliser pour créer des enregistrements, vous pouvez les utiliser pour lire des enregistrements comme nous l'avons fait. On a fait ça et qu'est-ce que j'ai lu ? Donc, je vous mets au défi de faire sur la mise à jour sur une suppression. Il suffit de créer des procédures de magasin, une qui dit Update Student, Où vous passez la valeur I D, ainsi que toutes les valeurs que vous attendez lorsque les étudiants doivent être mis à jour et dans la
déclaration Iran pour cela sur notre défi. Vous aussi d'être un pour supprimer où vous mettez dans les étudiants de Leeds en passant l'idée, puis vous supprimez ce sont des étudiants en particules. Donc, c'est essentiellement les procédures de holster fonctionnent maintenant. pratique très courante après l'insertion d'un euro est de renvoyer l'i d hors de la route qui vient d'être inséré. Andi, même si ce n'est pas nécessairement ce que vous revenez, parfois vous voulez donner nos Verticals de retour. Les procédures de magasin sont utilisées pour toutes sortes de choses qui peuvent être utilisées pendant un mois. Donc peut-être deux idées passantes. Vous faites des calculs ou vous vouliez exécuter une forme hors opération complexe sur quelque chose en utilisant une requête, puis vous renvoyez juste une valeur. Donc, le fait est que vous pouvez retourner des valeurs et pour faire cela, ce que vous devez faire est de spécifier sur les anciens paramètres de
mise. En fait, je vais juste modifier cette procédure que nous n'avons pas déjà appelée insérer des étudiants pour modifier notre procédure. Voyons voir,
nous sommes arrivés le lendemain de la clôture de ça. Voyons voir, Andi, j'ai la procédure stockée ici. Je peux toujours faire un clic droit dessus et aller à modifier, ce qui va lancer le même modèle, peut-être avec un orteil lignes supplémentaires. Mais le fait est que, au lieu d'avoir une procédure de création, lequel de sur la procédure de l'autel ? Très bien, alors rappelez-vous que le mot clé de l'autel est utilisé à la place de la création lorsque l'objet existe, déjà conscient, modifiant son ainsi dans cette situation parce qu'ils le modifient pour avoir l'autel sur. Alors ce que je vais faire est à un nouveau périmètre, et je vais l'appeler étudiants I d. Sur ce sera un int. Mais alors la partie importante qui le différenciera de tous les autres paramètres est qu'il aura le mot clé sorti. Alors je sais que je suis en train de définir ce paramètre comme sur l'ancien paramètre put, ce qui signifie. Vous devez fournir des valeurs pour ceux-ci directement sur. Ensuite, il fait son fonctionnement, mais on s'attendait à ce qu'il donne quelque chose au paramètre de sortie pour le retour. Donc, les idées d'
étudiants, mon ancien paramètre de mise, j'insère un nouvel étudiant. Et l'attente est que je vais retourner le j'ai quitté cet étudiant nouvellement inséré parce que, je veux dire, quand nous avons une grande école, nous ne savons pas combien d'élèves nous avons. Nous voulons juste sur toute la valeur de vente. Donc, je vais voir ensuite sélectionner sur puis se étudiant i d sur puis à l'intérieur idée de l'étudiant, um allé assigner ce qui causerait l'école sur l'identité de score. Donc, ce est juste une petite fonction qui nous donne beaucoup d'orteil nous de retourner à peu près
le I d ou les dernières valeurs de portée Rappelez-vous que l'identité est ce qui l'aide à rendre compte. Donc quand on dit que l'identité de la tarte de l'école vient juste d'être retournée dans les derniers cônes basés sur cette opération, alors, après avoir fait ces changements sur la modification, je dois savoir exécuter parce qu'une fois de plus, c' est un script. Donc, pour exécuter cette autre commande afin qu'elle enregistre les modifications sur Ensuite, nous pouvons essayer d' exécuter cette requête à nouveau. Donc je vais changer le nom sont les noms sont tous. Donc j'utilise un nouvel étudiant appelé Abby Thompson sur Elle est née le cinquième de la seconde en l'an 2000. Donc c'est sa date de naissance. Quelqu' un pour aller de l'avant, exécuter sur qui va ensuite insérer. Alors il semblait que, euh, paramètre n'était pas l'approvisionnement, qui est l'étudiant i d, qui est celui que je viens de mettre en tant que vieux mis sur DSO Nous pouvons revenir à notre définition et voir ce que j'ai laissé sur. Je crois que j'ai oublié quelque chose dans la déclaration d'exécution. Il y a donc quelques choses que nous devons modifier dans nos exécutions. Donc, tout d'abord, que toute variable de mise doit exister dans le contexte de nos scripts d'appel. Donc c'est notre nouveau script et juste un juste l'éliminer les confusions. Je vais ouvrir un nouveau fichier de script où nous allons utiliser l'école, et ensuite on recommence. Maintenant que nous avons ton école, la prochaine chose que nous voulons faire est de déclarer une variable. Ce genre de off ressemble à notre 12 l'ancien mis verbal. Donc, ma variable de sortie est étudiant. Je D Donc je vais simplement déclarer une autre variable dans ce nouveau script. Fenêtre des étudiants de cours idée avec un type de données désactivé. Aussi ensuite, je vais exécuter la procédure meister et je vais juste écrire exe exécutif . Et vous ne pouvez pas très bien. Tout le mot exécuter. Donc, vous savez lequel seulement quelques-uns plus à l'aise avec l'écriture. Et puis je vais juste me droguer pour la procédure stockée. Pas de problème. C' est facile à enfiler. Alors, voici un piquet. Vous pouvez en fait simplement donner des valeurs à la place d'écrire des odes ou ce nom de variable est égal cette valeur. Donc, si je me souviens dans mon permis début score vêtu, nom, prénom, date de naissance donc je peux en fait juste mettre dans les valeurs. Donc ma première valeur le nom de famille. Alors j'ai mis dans Thompson puis mon prochain est RB sur alors qui est le prénom à la date de naissance est mon troisième sont mettre une date de naissance. Donc, si je me souviens, sa date de naissance était 2000 0502, puis, pour finir,
je peux juste ajouter des étudiants, c' est-à-dire, sa date de naissance était 2000 0502,
puis,
pour finir,
je peux juste ajouter des étudiants, c'est-à-dire,
et après avoir écrit sur le nom de la variable, et après avoir écrit sur le nom de la variable, J' ai besoin de mettre le mot-clé ou de le mettre une fois de plus. Donc, quand j'exécute ce fichier de requête entier parce que je peux juste exécuter cette ligne parce que l' ID de l'étudiant
variable est déclaré ici. J' ai donc besoin du fichier entier où aller séquentiellement, déclare l'idée de l'étudiant, puis exécute la commande sur. Alors je vais juste mettre à la fin de cette étudiante sélectionnée, Heidi. Donc, ce que nous allons faire est d'exécuter la procédure stockée en passant à Thompson, Abby et la date de naissance en faisant ce qu'il doit faire, puis tout mettre l'identité de portée ou le nouveau que je dévalue à l'étudiant I d sur. Ensuite, je vais juste le stocker orteil dans cette section ici avec tous les mots clés mis sur. Ensuite, je suis avec sélectionné, donc il devrait être affiché dans les résultats que quelqu'un à exécuter sur. Là, nous obtenons que l'étudiant nouvellement créé I. D. a 17 ans. Et juste pour vous montrer à quel point tout est réutilisable, je vais mettre un autre élève. Cette fois. Le nom de l'élève est blanc foncé. Tunney est né en 1985. Andi Au lieu de simplement choisir l'idée de l'étudiant parce que je ne veux pas vraiment voir l'idée de l' étudiant, je veux voir le dossier complet de l'étudiant. Donc, ce que je vais faire est d'exécuter ma procédure de magasin. Bbo dot Sélectionnez étudiant par i d sur. Ensuite, je vais passer la valeur de l'étudiant i d comme paramètre Donc je suis juste de montrer votre tout fonctionne ensemble Donc j'exécute insert étudiant sur je suis en train de passer dans les valeurs orteil vous savez, exécuter contre alors je suis de retour ou tout mettre l'étudiant de valeur i d ou le nouvellement créé I d toe un étudiant de cause variable I d sur Ensuite, dans cette ligne suivante, Je vais orteil utiliser cet étudiant i d Valeur toe Sélectionnez que les étudiants utilisant l'autre
procédure de magasin que j'ai appelé select student par J'ai quelqu'un pour emmener l'étudiant. Je vais remplacer ce 13. Donc, ce qui va faire est quand cette variable stocke la valeur de retour des
étudiants d'insertion . Cette procédure, je vais exécuter cette procédure stockée suivante, et je vais passer la valeur qui est dans cette variable dans le paramètre pour ce téléphone affiché ou pour cette procédure de magasin. Désolé. Donc, quand je clique sur exécuter, alors je verrai réellement les détails des étudiants revenir là-bas nous allons. Donc est étudiant numéro 18 porte tout à fait sur tous les détails qui ont été juste insérés. Donc, c'est pour que vous puissiez réellement mettre les choses ensemble orteil automne il opérations
complexes ou potentiellement complexes Une fois de plus, lorsque vous construisez votre application réelle au-dessus de cette base de données, vous pouvez mettre beaucoup d'intelligence dans votre procédures stockées. Andi, c'est juste à toi de les appeler d'une manière qui soit,
tu sais, tu sais, bœuf en mangeant une bonne expérience utilisateur. À la fin de cet exercice, vous auriez appris un trou pour commencer à créer des procédures de magasin dans votre base de données. Vous pouvez encore une fois aller de l'avant et créer une procédure de remuement pour tout type d'opération, toute opération de foule, toute opération entre les deux. Sur vous pouvez les réutiliser, en utilisant le mot-clé exact, appelant la procédure stockée au passage, quels que soient les paramètres que vous appréciez bien pour les mentors de pièce que vous voulez dire ont définis. Si vous n'avez pas trouvé de paramètres définis Désolé, alors vous pouvez simplement appeler la procédure stockée comme nous l'avons fait ici avec sélectionnez tous les étudiants
33. Triggers de la table: Hé, les gars de cette vidéo discuteront des déclencheurs dans SQL Server 2017. Non, un déclencheur. En effet, développement de
Toby est à peu près une procédure qui s'exécute automatiquement lorsqu'un événement se produit , et l'événement est généralement comme un insert sur une action de mise à jour ou de suppression. Sur une table hors parcours, vous pouvez définir lequel d'entre eux vous voulez faire une action sur, et c'est ce que nous allons faire dans cette vidéo. Oh, pour créer un déclencheur, nous allons dans notre base de données, aller dans la liste des tables et puis trouver la table sur laquelle nous aimerions le déclencheur. Donc, pour cette vidéo, je vais créer un déclencheur sur la table des étudiants. Alors construisons un scénario. Chaque fois qu'un étudiant est ajouté, pelouse ajoute automatiquement à l'inscription pour ces étudiants sur def, nous vérifions les inscriptions. Quoi ? Allons filer le cours. Rappelez-vous que nous avons quelques cours, et disons que tous les élèves inscrits à l'école seront automatiquement inscrits dans le cœur du cours HTML. Alors, dans l'étable d'inscription, ce que nous avons est l'enseignant i d. avec le cours I d. Donc, nous savons enseignant à un cours d'enseignant. Un sur ça. Nous pouvons trouver les détails de l'enseignant à facilement en regardant qui enseignant est. Et c'est John McDonalds. Donc John McDonald enseigne HTML Onda. Eh bien, nous avons plus d'un étudiant ou plus d'un. Les étudiants font du HTML avec John McDonald. Donc, chaque fois qu'un étudiant est ajouté par défaut, nous nous attendons à ce qu'il y ait une certaine inscription dans la classe HTML avec John McDonald. Andi, même si leur avidité est non. Mais cette inscription doit avoir lieu. Non, ce sont deux options. Vous pouvez essayer de créer une instruction d'insertion complexe où chaque fois que vous insérez un étudiant , puis vous essayez de le mettre là dedans. Ou ce que nous pouvons faire est de créer un déclencheur sur la table des étudiants, sorte que sur insérer un étudiant. Nous allons simplement créer l'inscription. C' est là que Trigger entre en jeu. Donc ce que je vais faire, c'est aller à la table de mes étudiants, l'
étendre. Ensuite, vous voyez les dossiers qui états déclencheurs. Et si vous avez étendu leur aucun déclencheur attaché afin que je puisse distraire, nous pouvons cliquer sur nouveau déclencheur, ce qui fait apparaître un fichier modèle pour la création d'un déclencheur ? Non, si vous avez fait des fonctions et des procédures de monsieur, vous seriez familier avec cette température et vous savez que vous avez d'abord remplacé tout ce qui est suggéré. Donc, au début, c'est le nom du schéma. C' est quoi le ski ? Mon schéma de nom serait par défaut. force de la télévision. Je remplace juste l'argent clé du ski par d viel on. Ensuite, le nom du déclencheur serait créer et rouler la menthe et ensuite nous voulons voir sur ainsi de suite. Et puis nous voyons un argent de ski une fois de plus. Donc, nous dirions db o sur puis le nom de la table, qui est cours ou moins sont des étudiants. Donc, nous voulons créer le déclencheur, créer l'inscription sur la table des étudiants sur. Ensuite, nous voulons voir que nous voulions arriver après et ensuite ils suggèrent d'insérer la suppression. Donc, basé sur le scénario, travailler avec il serait sur insérer Non, continuer ce déclencheur, nous insérons les instructions pour le déclencheur et nous rappelons que ce que nous faisons est de créer une nouvelle inscription basée sur le I d off ou étudiant nouvellement créé sur dwell autres valeurs prédéterminées afin que je puisse aller de l'avant et créer un insert Dubai commencé dans les instructions et qui sera inséré dans un autre dire db o dot inscriptions sur. Ensuite, nous spécifions les colonnes en fonction de l'opération que vous définissez le déclencheur pour vous avez accès à trois table spécialisée donc nous avons insérer dans ce scénario. Nous avons donc accès à une table appelée Inséré. Si nous l'avons fait à l'opération d'élite et nous aurions accès à supprimé, je suis juste de la même manière. Si nous le faisions, une opération opiacée aurait accès à la table appelée Created. Donc, parce qu'ils font un inséré ce qui se passe cette table inséré, Pas de pistes, toutes les valeurs qui auraient juste été littéralement insérées dans nos étudiants DDO. Puisque la valeur dans le besoin du rôle inséré est le i d. alors j'ai besoin d'un moyen pour obtenir l'i d pour le capturer afin que je puisse aller de l'avant et créer l' inscription. Sachez ce que je vais faire est d'abord d'être clair une variable que je l'appelle étudiant I d sur la période de temps d'un pouce sur Ensuite, je peux sélectionner l'état de la valeur dans étudiant i d de la table insérée. Donc, je peux toujours faire quelque chose comme select star from inséré Donc cela me donnerait juste la règle Toutes les règles pour ce qui vient d'être inséré, y compris le je dévaluer. Puisque je n'ai pas vraiment besoin de star Ce dont j'ai besoin est juste étudiant i d Alors je peux attribuer la valeur de la table insérée pour le i d pour la valeur nouvellement insérée dans mon échelle sont variables appelées étudiant je d quelqu'un pour dire sélectionner que les étudiants en sciences i d est égal à. Et puis la colonne i D provenant de la table insérée. Donc, juste pour mettre cela dans le contexte, tout ce dont j'ai besoin de se rappeler que ce déclencheur est appelé dès qu'un insert se produit . Donc, une fois que quelque chose est inséré et que je viens de modifier l'objet, vous êtes afin que nous puissions voir d'autres colonnes auraient inséré le nom de famille, le
prénom , la
date de naissance et l'inscription sur. Ensuite, l'idée est créée lors de l'insertion. Donc, dans ce déclencheur, une fois que j'ai appelé ma table insérée, puis j'ai accès à l'I d.
On. Toutes les valeurs qui viennent d'être insérées dans l'équation ne sont pas dans les étudiants stables. Alors ce que je fais ici est que je juste vraiment besoin de l'idée parce que cela crée sur inscription ou tout ce que les étudiants qu'ils étaient vraiment a pour moi d'utiliser l'inscription étrangère est un étudiant i d. Quoi qu'il en soit vu que j'ai besoin est un étudiant i d. Donc, je déclare une cause variable étudiant i d Et puis je sélectionne la valeur i d de la table
insérée sur dime agréable qu'à l'intérieur de mon échelle nouvellement définie sont terribles. Je sais que j'ai cette variable ou cette valeur. Ensuite, je peux faire mon insert dans et je vais juste dire db o inscription dot sur Ensuite, les colonnes
à insérer dans lequel notre nom de famille premier inscription Désolé. Donc, ce serait bien sûr idée que nous savons va être trop avidité, ce que nous savons ne sera pas sur Rappelez-vous que peu importe l'ordre dans lequel nous
les mettons . Donc je connais toutes les valeurs. La seule valeur variable ici est vraiment l'étudiant i d. Parce que je ne sais pas quelle est l'idée quand un étudiant est inséré, mais je ne sais pas lequel. Bien sûr qu'ils vont le faire. Et je ne sais pas avec qui ils vont le
faire, alors insérez dans bbo que les inscriptions au cours par I d cupidité, qui ne sera pas étudiant chez vous, ce que vous voulez être. Tout ce que i d est associé aux étudiants qui vient d'insérer quand l'enseignant i d. Et puis je vois des valeurs et puis les valeurs une fois de plus serait à notre désolé pour html, Le grand est non, parce que quoi ? Ils sont juste inscrits donc ils ne peuvent pas se mettre d'accord sur alors à l'idée d'étudiant en sciences. Donc quoi que ce
soit, quelle que soit la valeur tirée de la table insérée pour les étudiants nouvellement insérés, c'est les étudiants sur lesquels je dévalorise. Alors l'idée de l'enseignant serait de parce que vous savez que c'est fait mais que vous ne voulez pas enseigner ce cours. Et une fois que vous avez fait tout cela, nous aurions terminé toutes les étapes requises pour créer ce déclencheur. Non, je peux cliquer sur exécuter, ce qui va réellement créer le déclencheur. Donc, si je retourne à mes étudiants stable sur rafraîchir la soudure de déclenchement que je verrai mon déclencheur listé dessus s créer l'inscription. Maintenant, une fois de plus, cela sera tiré sur un événement. Donc, ce que je vais faire est de faire quelque chose comme, je vais créer une nouvelle fenêtre de requête pour utiliser l'école. Andi, j'ai une procédure d'intendant quelque part ici qui me permet d'insérer de nouveaux étudiants . Je vais juste appeler la procédure Maître en utilisant le mot clé IQ oeufs. Et vous pouvez toujours vérifier ma vidéo sur, monsieur procédures si vous n'êtes pas tout à fait sûr de ce que je vais faire. Donc, la procédure stockée insérer les étudiants insérer un nouveaux étudiants avec le nom de famille Willis la marque prénom sur les actes de naissance de 2000 et 1-0 tiret 12. Très bien, donc un sur, puis une fois que je l'exécute, on voit que j'ai en voiture Cintas parce que j'ai besoin de mon commerce cérébral que sur pas exécuter à nouveau. Oh, je me suis arrêté sur les arables, donc j'ai besoin d'un vieux mot verbal appelé sur les idées des étudiants. Donc, encore une fois, si tout cela vous regarde loin, vous pouvez toujours vérifier ma vidéo sur les procédures de remuage où je passe en fait tout ça , mais pour non, je vais juste être clair. Certains très parce que les étudiants ident dans Donc vous n'avez vraiment pas besoin d'utiliser une procédure de magasin ? Peut avoir utilisé une instruction d'insertion régulière à insérer dans la table. Ce n'est pas un problème. Mais notre que M. Proceed. Donc je fais juste le requin Opie. Ensuite, je clique à nouveau sur exécuter et vous savez, nous voyons que la commande est terminée avec succès. Maintenant, il ya un peu de brillance est qu'une fois que quelque chose est inséré dans nos étudiants stable, puis automatiquement basé sur notre déclencheur que nous venons de définir, quelque chose devrait être inséré dans notre inscription stable quelqu'un pour aller dans ma chambre et stable sur. Je vais faire une autre exécution là-bas. Nous voyons que nous avions 17 règles avant. Non, on en a 18. Nous avons une nouvelle inscription. Les nouveaux étudiants avec l'étudiant I D 19 Onda, cette idée de cours sur l'enseignant I d à. Et si on jette un coup d'oeil aux étudiants avec le I d 19 sur ça, j'y vais juste. Permettez-moi de sélectionner le top 1000 des étudiants. Ensuite, nous voyons que la marque Willis a effectivement été entrée. Il a l'étudiant i d 90 andare déclencheur a agi sur l'action d'insertion parce que j'ai dit après insérer Donc, après un nouvel étudiant est inséré, alors je veux que vous orteil obtenir le i d pour cet étudiant nouvellement inséré sur, puis faire une inscription. Non, c'est un cas d'utilisation. Un cas d'utilisation plus pratique serait présenté avant la vérification. Donc, vous savez, vous voulez garder un journal hors ce que sont les étudiants, quelles données peuvent avoir été supprimées de l'additif de base de données est mis à jour et surtout par qui. Donc bon cas d'utilisation off triggers est qu'une fois, um, actif a bean, vous savez, évité nos enregistrements dans une table ont été mis à jour, supprimés ou ajoutés. Ensuite, nous avons eu un déclencheur pour voir cette table. Je veux insérer dans une forme de table de journal que cela s'est produit en ce moment. Très bien, donc c'est un cas d'utilisation plus pratique. Très homme sur ça. Les déclencheurs sont un peu coûteux, ce qui signifie qu'ils peuvent nécessiter beaucoup de ressources. Ils peuvent ralentir l'opération hors de la base de données, en
particulier dans un contexte où de grandes quantités hors battement sont pasteur. Un grand nombre d'opérations sont menées quelqu'un pour faire un autre déclencheur, et ce déclencheur non, va effectivement voir que si un étudiant est supprimé que je veux supprimer toutes les inscriptions que cet étudiant aurait eu dans le système. Donc je suis encore une fois, je fais ça, par
exemple, malade. Ce n'est pas nécessairement le meilleur cas d'utilisation, mais juste pour que nous puissions comprendre ce que les déclencheurs sont capables. Donc, je suis juste interagir cliquer à nouveau et voir nouveau déclencheur sur. Ensuite, je vais aller de l'avant sur Put in BB ou pour mon ski mon nom. Et je vais faire cela pour arrêter les députés qui sur très rapidement pour les deux espaces qui nécessitent ski Mon nom Le nom de déclencheur sera supprimer l'enregistrement des étudiants est un sur il sera basé sur la table des
étudiants une fois de plus sur puis il sera après un sermon de suppression. Nous pouvons retourner,
insérer, insérer, mettre à jour ou supprimer. Donc, cette fois, c'est une suppression. Donc, après une suppression off, un étudiant et moi voulons effectuer cette opération et l'opération et ont tendance à effectuer aura besoin de moi pour obtenir l'étudiant le i d de l'étudiant qui a été juste supprimé afin que nous puissions faire quelque chose de similaire. Je peux être clair. Certaines échelles sont variables sur. Je vais l'appeler encore cette fois, juste pour que vous puissiez voir que ce n'est pas forcément ce que vous connaissez, le même nom. Donc studio I d. Et puis je vais sélectionner la valeur forcée à I d d'être égale à la valeur I d
provenant de ce temps. La table que nous recherchons est supprimée car il s'agit d'une action de suppression. Donc, je reçois les données d'une table temporaire appelée supprimée. Sachez que j'ai la valeur que je vais dire supprimer des inscriptions sur lesquelles nous sommes. Ensuite, je vais dire où l'étudiant i d est égal à la science à I d. Donc je supprime un étudiant tout sujet dans lequel l'étudiant aurait été inscrit. On s'attend à ce qu'il soit supprimé maintenant. Il y a une sorte d'ajustement que j'aurai besoin pour moi à ma conception actuelle, et c'est à nous que nous possédons les contraintes de clé étrangère. Donc,
je vais devoir retourner à l'écurie de mes étudiants ,
aller à la conception , aller à des relations, et puis je vais devoir modifier la relation que les étudiants et les inscriptions qu'ils ont sur cette modification est va bien se passer, le nom de la voiture est en cascade. Donc, je vais orteil, déposer l'insert et supprimer dans certains opiacés mystification et puis je voudrais juste définir des règles pour les suppressions et mis à jour si bien, vraiment, pour supprimer. Donc vous voyez ici que ce n'est pas une action. Et ce que cela signifie, c'est que si j'essaie de supprimer un étudiant, alors je ne peux pas supprimer les étudiants tant qu'ils ont des inscriptions juste parce que et cette valeur est nécessaire pour référence dans la stable d'inscription. Donc, ce que cela va vraiment faire est de voir que gagner quand un étudiant est supprimé ou la clé
primaire d'une relation est en cours de suppression. Mais je veux en cascade, qui signifie que toutes les valeurs associées pour cette clé primaire et toutes les autres tables devraient être supprimées aussi, ou est-ce que je veux juste définir aucun sens que l'inscription sera stable que la valeur. Si c'était un, il saura devenir non Ou est-ce que je veux asseoir une forme de valeur par défaut ? Donc, dans ce cas, je vais juste dire cascade parce que j'ai dit, je veux supprimer les enregistrements des étudiants pour que je fasse juste ça. Ils peuvent voir que, vous savez, une chose affecte l'autre, donc en voyant Cascade allumé, puis en donnant des vêtements, alors sauver ce que je vois, c'est que si je supprime un étudiant et s'il a un relation avec les inscriptions, jamais attendre que tous les enregistrements associés devraient également être supprimés sans soucis ? Très bien, donc après avoir fait ça, eh bien, je ne l'ai pas vu. Donc, je dois exécuter pour que nous créions réellement ce déclencheur. Andi, je vais juste rafraîchir mes déclencheurs pour m'assurer qu'il est là. Donc, les dossiers de l'étudiant principal sont sur. Ensuite, je vais garder celui-ci simple, donc je vais juste aller au design. Onda. Je suis désolé. Non conçu. Je suis allé orteils et il haut de se demander mon mauvais sur. Je vais faire référence à ce que je connaisse les inscriptions. J' ai quelqu'un qui dispose de certaines de ces fenêtres. Très bien, donc dans mes inscriptions, je vois ici que l'étudiant 3 est en trois cours, ce qui signifie que si je retire l'étudiant, trois sont en quatre chevaux plutôt. Hum, l'attente est que si je retire l'état en trois que les quatre de ces et rouler la
carte de mentor devrait également être supprimée. Non. Encore une fois, il n'a pas besoin d'être une procédure stockée peut être par n'importe quelle méthode que je vais supprimer un étudiant. Donc, je vais juste supprimer Jodi Macintosh en utilisant l'interface edit Stop 200. Je sélectionne simplement la règle entière en cliquant sur la gauche la plus pâle sur. Ensuite, je suis juste allé au président pour laisser mettre mon clavier sur puis comme un C. s. Je veux supprimer définitivement Jodi Macintosh avis. Je n'ai pas d'erreurs sur. Alors si je retourne à mes inscriptions et que j'exécute un sexe là-bas, vous voyez qu'il n'y a plus de dossiers pour Jodi Macintosh. Donc c'est un retrait d'un déclencheur, vous savez, sur un certain événement, je veux effectuer certaines actions sur DSO. Mon déclencheur est vraiment en arrière-plan, juste en cours d'exécution. Je fais juste le travail léger, et la gâchette peut être à l'arrière de faire le levage lourd après le fait. Alors je vais vous encourager. Il suffit d'essayer quelques déclencheurs, essayé de modifier la conception en conséquence pour prendre en charge le déclencheur. Encore une fois, si vous faites quelque chose pour modifier beat special avec les relations que vous devez
revenir à vous. La conception de cette relation de clé étrangère sur l'ensemble du changement. Il se comporte sur le plomb sur orbite
34. Le script, la sauvegarde et la restauration des bases: Hé, les gars, dans cette vidéo, je vais montrer comment vous pouvez créer un script pour votre base de données ou Anita veut dire boucle. Donc, le scénario est que vous n'avez pas seulement besoin de faire avec la conception de votre base de données sur votre
machine de développement sur DNO. Vous devez réellement promouvoir vos données abeilles dans la production ou dans un autre environnement, ou si c'est cela, ou vous voulez simplement partager votre base de données avec un ami ou avec un membre de la famille pour une raison quelconque . Ou vous avez juste besoin de le déplacer entre les machines ou peut-être juste besoin d'une copie. Le fait est que le serveur Excuse, mon SQL Server 2017 vous donne en fait quelques outils qui vous permettent de créer soit une sauvegarde de la base de données ou juste un script sur la base de données afin que vous puissiez réellement exécuter le script sur un autre ou ordinateur et de créer à nouveau la base de données. Donc nous allons passer par ce droit. Non. Maintenant, la première étape hors cours juste ont créé une base de données, est entré dans un niveau de satisfaction avec sa conception sur. Ensuite, nous allons connaître le script,
donc si vous utilisez un serveur de compétences, Management Studio peut cliquer avec le bouton droit de la souris sur votre base de données, puis passer aux tâches sur. Ensuite, dans les tâches, vous voyez une option qui est son script de génération. Alors commençons par celle-là. Comme vous pouvez le voir, un
certain nombre de tâches qu'il peut faire. Vous pouvez le toucher, vous pouvez l'enlever hors ligne. Vous pouvez faire un certain nombre de choses. Mais dans cette vidéo, nous regardons simplement comment nous pouvons l'exporter vers un script. Donc, je vais juste me lancer pour générer des scripts sur. Ensuite, cela fait apparaître un petit assistant afin que nous puissions cliquer sur suivant. Ensuite, il nous demande, Voulez-vous ext script toute la base de données et tous les fichiers, Désolé et tous les objets Ou voulons-nous être très sélectifs dans les types hors objets ? Donc, vous savez, nous avons des fonctions ou des procédures stockées. Nous avons des tables d'utilisateurs. Je veux tout pour que je puisse le laisser à la première option pour juste,
vous savez, vous savez, cocher
aveuglément tout de toute façon,
allumer . Ensuite, on passe à la prochaine. Ensuite, ils nous ont demandé, Voulez-vous cve le script toe un fichier qui créerait alors un fichier SQL à un endroit hors notre préférence ? Voulez-vous oh, copié dans le presse-papiers, qui signifie qu'après avoir fait ce qu'il est censé faire, nous devons trouver un endroit pour le coller correctement afin qu'il soit juste automatiquement copié dans le presse-papiers. Ou est-ce qu'on veut voir si la nouvelle fenêtre du chœur ? Parce que nous voulons juste voir le script au lieu de l'avoir pour référence future. Donc, je vais vraiment choisir une option de sauvegarde à la fenêtre nucléaire afin qu'après la fin, il s'
ouvrira et nous pouvons l'examiner sur. Alors nous ne pouvions pas ensuite. Et puis nous voyons la source et ainsi de suite, donc nous pouvons juste la prochaine fois. Ensuite, l'opération commence. Une fois cette opération terminée, nous voyons que le script déclenche des charges derrière la fenêtre de l'assistant. Ensuite, on peut cliquer sur Terminer, et ensuite on verra notre beau script qui
ne ressemble et ensuite on verra notre beau script qui
ne ressemblepas à ce qu'on a écrit. C' est très strict, carré, un standard avec un tas de paramètres que nous n'aurions même pas regardé. Donc, vous voyez auto rétrécir que vous voyez en mer donc il fait un tas de pré-opérations préparant la base de données pour les séances génériques, je suppose, ou basé sur les conflagrations de votre machine sur. Ensuite, nous créons les shuns de téléphone sur. Nous créons tous les objets au fur et à mesure que nous avançons. Donc ici, l'instruction create table est là donc saura comment écrire tous ces mots
vers le script va être un peu plus compliqué et ce que nous avons fait, parce que alors nous avons quelques relations comme sur la stable d'inscription. Il teste trois relations. Ils vont voir quelques lignes de contrainte sur le cordon. Savez-vous que c'est assez complexe est assez agréable,
cependant, cependant, qu'est-ce qui manque à cela ? Et si vous regardez, vous voyez que celui-ci, cette section crée des propriétés et le diagramme de sorte que cela signifie que si j'exécute ce script sur une autre machine, il va créer une base de données appelée School avec tous ces objets à l'intérieur. Donc c'est l'école de base de données dire, si je voulais un autre nom, je pourrais voir sur le score V 1. D' accord, mais bien sûr, si je change créé deux baies soulignent la vue une. Ils ne portent jamais les bases de données référencées, c'
est-à-dire l'école. Je devrais essayer le script modifié en conséquence, mais le point est, tout ce qui apparaîtrait après que ce script est généré sera illisible pour être un rôle sur une autre machine, et cela nous donnera mais la base de données comme il s' cette base de données vide, car, eh bien, il crée toutes les tables, toutes les fonctions et les procédures de sir. Mais il ne remet pas le chauffage lui-même. Donc, c'est la méthode numéro un. C' est à ce moment que vous voulez arrêter blanc, frais basé sur l'OTAN. Le design est intact. Le nom est intact, mais il n'y a pas d'institution de données. Lorsque vous voulez un fichier de script qui vous donne les données sur les données, est
évidemment relatif à ce qui se trouve dans la base de données, comme au moment où le script est exécuté, qui signifie que si quelque chose est ajouté par la suite, alors le script ne le reflètera pas. Mais nous pouvons faire un clic droit aller à l'école de tâche à la même génération de scripts fils sur là, nous allons à Suivant sur. On peut laisser ça à nouveau, mais dans cet écran, ce qu'il faut faire, je vais faire une vitre nucléaire tout de même. Mais ce que nous devons faire différemment, c'est aller avancer maintenant à l'avance. Il y a une catégorie où il est dit « Tu veux ça » ? Sur quels types de données voulez-vous utiliser un script, alors les options disponibles Tours sont uniquement schéma, ce qui est la valeur par défaut. Nous pouvons laisser tomber la porte et dire que nous voulons seulement les données, qui pour moi ne signifie pas quoi depuis à moins que vous créez les abeilles de données ou que vous avez les données Bizerte et que vous voulez juste retenir ? Non. Mais alors vous avez aussi le schéma et les données sur En sélectionnant le schéma et les données, cela nous donnerait ce que nous avons déjà, qui est la structure ce sera. C' est généralement son script Onda Aussi le script qui insère des données dans les tables respectives . Certains, ce qui est vrai. Schéma et dissuader Pensez. Ok, je laisse aller à un hiver nucléaire pour qu'on puisse l'analyser. Cliquez également deux fois sur le suivant, puis attendez que l'opération soit terminée. Cliquez, terminez. Et maintenant, si nous regardons à travers le chemin peut défiler un peu et nous verrons que n'étaient pas dans la
section d'insertion . Donc, toutes les données qui étaient dans les abeilles de données comme au moment où cette tâche a été faite, nous ne voyons pas les scripts d'insertion qui vont insérer ces mêmes données dans les
tables respectives Tous les conférenciers ou les enseignants auraient été dans le système il y a été inséré ? Non, tous les étudiants. Andi, toutes ces choses merveilleuses. C' est ainsi qu'il a pu exporter une base de données. Exportez un script créant un script, frère qui exporte à la fois la structure et les données qui se trouvaient dans la base de données à ce moment-là ? Non. Une autre technique qui est utilisée, et c'est probablement la technique la plus couramment utilisée par les administrateurs de
bases de données qui veulent garder des sauvegardes hors de leur base de données, consiste à sauvegarder la base de données. Sachez que la différence entre un fichier de script et une sauvegarde est que la sauvegarde est généralement prise comme, ah, fichier qui peut être restauré à tout moment sur fait. Vous n'aurez qu'une base de données. Permettez-moi de le démontrer. Donc, si je me suis effacé comme la base de données de l'école, je vais à des tâches sur, alors au lieu de descendre pour générer des scripts, je remonte sur la digue comme ça. Ça fait apparaître ce menu. Où se trouve cette boîte de dialogue où je choisis la base de données ? Je peux confirmer que je veux sauvegarder la base de données de l'école. Je veux que les renforts soient pleins. Andi. Le composant est la base de données, puis je choisis un chemin pour le fichier de sauvegarde. J' ai remarqué qu'une extension de fichier est que B un k donc c'est, Ah, partie qui sera très dure défense. Je vais juste enlever ça rapidement et comme une annonce slick le jour, j'utiliserai le bouton de suspension de Boro pour,
ah, dossier quelque part, dossier quelque part, et je l'ai juste mis sur le lecteur C pour qu'on puisse trouver les cinq facilement allumés. Je vais juste appeler ça un point d'école être un cas de ce B A k une fois de plus cette extension de fichier de
sauvegarde ? Donc, nous cliquons sur OK, puis nous avons différentes options là-bas. Options de média dans lesquelles vous souhaitez ajouter toe à une sauvegarde existante. , Parfois,ce n'est pas une bonne option parce que l'existant est l'état corrompu. Je veux, tu sais, être utilisé. Le tapis. Alors, euh, le vieux veut faire ça ? Ensuite, vous avez celui-ci qui est son dos bouleversé où la sauvegarde expirera après Ekstrom
jours de repos afin qu'on puisse nous changer. Laissez tous ces paramètres aux paramètres par défaut. Pour cet exemple, vous avez plein de différentiels. Le différentiel est plus comme ça sur incrémentielle nous voit pleines. Donne-moi tout de toute façon. Et puis nous cliquons. OK, Et puis il semblait que les accès la nuit et c'est parce que je vais directement à mon lecteur
C sur ce serveur. Laisse-moi recommencer. Donc, je vais supprimer quand le clic ajouter le jour au lieu d'aller au lecteur C directement, je vais aller orteil. D' accord. Donc, je n'ai pas un approprié pour un archer va juste aller dans mon lecteur C sur aller créer un dossier. Donc, créez juste un dossier, et je vais l'appeler pour être un k sur. Alors essayons encore ça. Donc, dans cet écran sur lequel, en fait après, annuler et le faire à nouveau afin que je puisse réellement voir être une clé comme une option sur Puis, une
fois de plus, fois de plus, c'est point de l'école b un k sur un Okay rapide. Et puis d'accord. Et puis l'accès n'est pas refusé cette fois. Cette sauvegarde est complètement terminée avec succès sur je peux cliquer. Ok, donc si je vais être un dossier K, alors je verrai que j'ai ah fichier de sauvegarde pour ma base de données. Donc je peux en fait, vous savez, partager ça avec quelqu'un et ils peuvent restaurer. Et ils obtiennent cette copie de base de données, comme à ce moment-là. Ou je peux vous
savoir, et si ma machine était en panne ou quelque chose comme ça ? J' avais besoin d'une sauvegarde de la base de données ou de la base de données Copy d'aujourd'hui. J' ai été corrompu. Andi, j'ai le BK loin d'hier hors cours, il y aurait des pertes de données, mais le fait est que je l'aurais effectivement copie abîme. Comme à ce moment où cette sauvegarde a été prise. Alors faisons semblant que nous restaurons ou la base de données de l'école sur notre serveur. Quelque chose est arrivé. Nous avons le fichier de sauvegarde, mais nous devons le restaurer sur notre serveur. Quelqu' un pour aller dans les bases de données. Droit. Cliquez sur. Ensuite, vous voyez que vos options sont attachées. veut dire que tu as peut-être eu un appel au pétrole. Un M D f f comme dans le fichier feu sur. Ensuite, cela vous permettrait de simplement,
vous savez, vous savez, attacher la base de données parce que j'ai déjà la base de données. Donc, comme vous les voyez ici, ils sont vraiment comme vous l'appelez. Je suis un zinman B comme dans le désordre sur de F comme dans les fichiers mdf de feu, non ? C' est ce que les fichiers de base de données sont stockés nous. Mais une fois qu'ils sont sous forme de bucko, il n'y a pas de K. Donc, si j'avais un fichier MDF, je pourrais restaurer ce MDF et il apparaîtrait dans la liste. Vous n'êtes pas ajouté au serveur. Je n'ai pas sur le dossier de l'Inde. J' ai Ah, Buick. Si nous. J' ai besoin de restaurer la base de données sur le serveur en second lieu, pour sélectionner restaurer les bêtes de données. Et puis cette boîte de dialogue me demande ce que je voudrais faire. Donc, d'abord, je vais sélectionner l'appareil, ce qui signifie que je n'ai pas de base de données elle-même, mais je dois aller sur l'appareil pour trouver le fichier de sauvegarde. Donc, je pense que l'ellipse que je clique sur ajouter. Ensuite, je navigue vers l'endroit où je connais ma sauvegarde, qui est mon dossier BK dans mon lecteur C. Donc, je clique sur OK, puis je pense que OK à nouveau. Et puis vous voyez, il y a une sorte d'opération qui détecte que c'était une base de données scolaire sur sa sauvegarde complète sur tout. Vous savez, ça vous montre les derniers remorqueurs de transaction à la date de début, et l'arrivée a fait comme à l'époque, donc encore une fois. Si vous effectuez une sauvegarde quotidienne en tant qu'administrateur de base de données, c'est la méthode la plus recommandée. Andi, si quelque chose ne va pas en cours de route,
évidemment, vous avez des données. Mais c'est une façon agréable et propre de restaurer vos bases de données. Donc, une chose, cependant, est que j'ai déjà une base de données scolaire. Je ne veux pas qu'une autre base de données de l'école ne soit pas la base de données avec les noms de l'école qui est illégale. Donc je vais appeler ça Wiki une école de soulignement. Assurez-vous juste que c'était un fichier de sauvegarde qui était en cours de restauration. Pour que je puisse le faire. Où ? Renommé le fichier de base de données sur, puis cliquez sur. OK, on, alors il fait une restauration. Et si vous regardez l'objet,
explorez, Vous savez, voyez, voyez, c'est nos trois bases de données. Un avec le nom de l'école soulignent B A K Donc je clique. OK, alors, si je, tu sais, juste y aller. Je vois tous les objets qui étaient dans la base de données d'origine, toutes les vues, toutes les procédures stockées, tout ce qui aurait été là à l'origine si l'Irak clique sur les enseignants et met en place 100 toutes les données c'était là, car à l'époque, la sauvegarde est encore une fois disponible pour moi . Donc, la réalité est qu'en tant que développeur de base de données, vous devez savoir comment construire une donnée propre occupée. Besoin de savoir pour manipuler les données, Bien sûr, mais puis, comme un administrateur de base de données va un peu plus profond que simplement effectuer les
opérations de foule de base où vous êtes réellement responsable de la santé hors du rythme d'une bête en outre, pour l'intégrité des données sur une base quotidienne. Ce sont donc des Tipnis que vous connaissez en tant qu'administrateur de base de données. Toby, vous devez être conscient, et vous devez être à l'aise avec faire au quotidien pour vous assurer que tout circule pour votre organisation.