


Utilisation de base des instructions DCL et des fonctions d'agrégation MySQL (2)
[Recommandations d'apprentissage associées : tutoriel mysql(vidéo)]
DCL
DCL est relativement simple et est principalement utilisé pour accorder ou révoquer des autorisations d'accès à la base de données, ainsi que pour valider et annuler les transactions de la base de données.
Accorder/Révoquer des autorisations
Prenons l'octroi d'autorisations comme exemple. Après avoir créé une nouvelle base de données, nous souhaitons accorder à des utilisateurs spécifiques des autorisations d'accès et d'exploitation pour la base de données (généralement dans l'environnement de production, pour des raisons de sécurité, non (la base de données fonctionnera via l'utilisateur root), pour cela, nous devons d'abord créer un utilisateur spécifique, tel que test
Les instructions SQL au niveau du contrôle telles que DCL sont généralement exécutées sur la ligne de commande. . Nous entrons dans le conteneur MySQL Docker, nous nous connectons à la base de données et passons l'instruction CREATE USER
pour créer un nouvel utilisateur test
et définissons le mot de passe sur test
:
Maintenant : mysql.user
Le champ est Host
ce qui signifie %
les utilisateurs peuvent se connecter au serveur MySQL depuis n'importe quel hôte. test
pour accorder le GRANT
droit d'utilisateur test
Toutes les autorisations d'opération de la base de données sont désormais : test
pour actualiser les autorisations, afin de pouvoir voyez-le dans la liste des autorisations de la base de données flush privileges;
Cet utilisateur est : test
, nous pouvons voir uniquement la base de données test
car elle n'a aucune opération sur d'autres bases de données Autorisations : test
sur la ligne de commande : REVOKE
revoke all privideges on test.* from 'test'@'%'; flush privileges;
// 授予权限 grant select on test.* to 'user1'@'localhost'; /*给予查询权限*/ grant insert on test.* to 'user1'@'localhost'; /*添加插入权限*/ grant delete on test.* to 'user1'@'localhost'; /*添加删除权限*/ grant update on test.* to 'user1'@'localhost'; /*添加权限*/ // 收回权限 revoke select on test.* from 'jack'@'localhost'; revoke insert on test.* from 'jack'@'localhost'; revoke delete on test.* from 'jack'@'localhost'; revoke update on test.* from 'jack'@'localhost';
transaction implicite.
Pour exécuter manuellement plusieurs instructions SQL en tant que transaction, vous pouvez utiliser pour ouvrir une transaction et BEGIN
pour soumettre une transaction. Ce type de transaction est appelé une COMMIT
transaction explicite. , si une erreur ou une exception se produit lors de l'exécution de la transaction, la transaction peut être annulée via l'instruction . ROLLBACK
, mais après avoir exécuté plusieurs instructions , la transaction n'a pas été soumise via BEGIN
, testez l'exécution de ces instructions SQL, entrez dans le panneau « Parcourir » pour afficher et constatez qu'aucun nouvel enregistrement n'est inséré : COMMIT
après la séquence SQL pour annuler la transaction a le même effet : ROLLBACK
BEGIN; INSERT INTO post (`title`, `content, `created_at`) VALUES ('这是一篇测试文章2', '测试内容哈哈哈', '2020-05-26 13:00:00'); INSERT INTO post (`title`, `content, `created_at`) VALUES ('这是一篇测试文章3', '测试内容哈哈哈', '2020-05-26 13:30:00'); ROLLBACK;
à la fin, la modification peut être soumise avec succès : COMMIT
Fonctions d'agrégation
En plus des requêtes SQL et des instructions d'opération courantes, SQL dispose également de fonctions d'agrégation intégrées pour faciliter des statistiques simples et pratiques sur les résultats lors de l'interrogation de données. Nous introduisons ici plusieurs fonctions courantes : count
, sum
, avg
, max
et min
. La fonction
COUNT
count
peut être utilisée pour compter le nombre total de résultats de requête. Cette fonction est généralement utilisée lors de l'exécution de requêtes de pagination. Afin de faciliter la visualisation directe des résultats, nous démontrons dans la ligne de commande :
Afin d'améliorer la lisibilité lors de l'interrogation des champs, vous pouvez spécifier des alias de champ via as
, ici La table post
a un total de trois enregistrements, le résultat de la requête est donc 3
.
SUM
sum
peut être utilisé pour additionner un champ dans les résultats de la requête statistique, il ne peut donc être utilisé que pour les champs numériques. Ici, nous ajoutons un nouveau champ au post
. tableviews
, utilisée pour stocker le nombre de vues de l'enregistrement d'article correspondant. Dans la structure de la table post
, choisissez d'ajouter un champ après le champ content
et cliquez sur "Exécuter" :
Définissez le nom du champ sur views
, et Définissez son type sur UNSIGNED INT
, qui représente un entier non négatif, et définissez la valeur par défaut sur 0
. L'instruction SQL correspondante peut être visualisée via la fonction d'aperçu :
Cliquez sur « Enregistrer » pour créer ce champ, vous pouvez le voir dans la structure du tableau :
Puisque views
a une valeur par défaut, les valeurs views
de tous les enregistrements sont actuellement Is 0 :
Vous pouvez le définir sur la valeur de simulation correspondante via la fonction "Modifier" :
Ensuite, nous pouvons utiliser la fonction sum
pour additionner les résultats :
AVG
avg
peut être utilisé pour compter un certain résultat de requête La valeur moyenne du champ, comme sum
, fonctionne également sur les champs de type numérique. Par exemple, nous pouvons l'utiliser pour compter le nombre moyen de vues de tous les articles :
peut être utilisé pour obtenir la valeur maximale d'un champ numérique dans les résultats de la requête. Par exemple, pour obtenir les informations sur l'article avec le plus grand nombre de vues, vous pouvez. faites ceci : max
et set names utf8mb4;
, afin que le chinois et les Emoji puissent être affichés. normalement. utf8mb4
sous-requête est également utilisé ici, qui consiste à utiliser le résultat d'une requête comme condition d'une autre requête. Ici, nous transmettons le nombre maximum de vues au. parent comme résultat de la sous-requête La requête est utilisée comme condition de requête pour obtenir les informations sur l'article correspondant.
MIN Contrairement à, la fonction max
est utilisée pour obtenir la valeur minimale d'un champ numérique dans les résultats de la requête. Par exemple, pour obtenir les informations sur l'article avec. le plus petit nombre de vues, vous pouvez le faire :min
Pour plus d'articles connexes, veuillez faire attention àphp mysql Chronique !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

MySQL convient aux débutants car il est simple à installer, puissant et facile à gérer les données. 1. Installation et configuration simples, adaptées à une variété de systèmes d'exploitation. 2. Prise en charge des opérations de base telles que la création de bases de données et de tables, d'insertion, d'interrogation, de mise à jour et de suppression de données. 3. Fournir des fonctions avancées telles que les opérations de jointure et les sous-questionnaires. 4. Les performances peuvent être améliorées par l'indexation, l'optimisation des requêtes et le partitionnement de la table. 5. Prise en charge des mesures de sauvegarde, de récupération et de sécurité pour garantir la sécurité et la cohérence des données.

Navicat lui-même ne stocke pas le mot de passe de la base de données et ne peut récupérer que le mot de passe chiffré. Solution: 1. Vérifiez le gestionnaire de mots de passe; 2. Vérifiez la fonction "Remember Motway" de Navicat; 3. Réinitialisez le mot de passe de la base de données; 4. Contactez l'administrateur de la base de données.

Créez une base de données à l'aide de NAVICAT Premium: Connectez-vous au serveur de base de données et entrez les paramètres de connexion. Cliquez avec le bouton droit sur le serveur et sélectionnez Créer une base de données. Entrez le nom de la nouvelle base de données et le jeu de caractères spécifié et la collation. Connectez-vous à la nouvelle base de données et créez le tableau dans le navigateur d'objet. Cliquez avec le bouton droit sur le tableau et sélectionnez Insérer des données pour insérer les données.

Étapes pour effectuer SQL dans NAVICAT: Connectez-vous à la base de données. Créez une fenêtre d'éditeur SQL. Écrivez des requêtes ou des scripts SQL. Cliquez sur le bouton Exécuter pour exécuter une requête ou un script. Affichez les résultats (si la requête est exécutée).

Vous pouvez créer une nouvelle connexion MySQL dans NAVICAT en suivant les étapes: ouvrez l'application et sélectionnez une nouvelle connexion (CTRL N). Sélectionnez "MySQL" comme type de connexion. Entrez l'adresse Hostname / IP, le port, le nom d'utilisateur et le mot de passe. (Facultatif) Configurer les options avancées. Enregistrez la connexion et entrez le nom de la connexion.

Raisons courantes pour lesquelles Navicat ne peut pas se connecter à la base de données et à ses solutions: 1. Vérifiez l'état d'exécution du serveur; 2. Vérifiez les informations de connexion; 3. Réglez les paramètres du pare-feu; 4. Configurer l'accès à distance; 5. Dépannage des problèmes de réseau; 6. Vérifier les autorisations; 7. Assurer la compatibilité de la version; 8. Dépannage d'autres possibilités.

MySQL est un système de gestion de base de données relationnel open source. 1) Créez une base de données et des tables: utilisez les commandes CreateDatabase et CreateTable. 2) Opérations de base: insérer, mettre à jour, supprimer et sélectionner. 3) Opérations avancées: jointure, sous-requête et traitement des transactions. 4) Compétences de débogage: vérifiez la syntaxe, le type de données et les autorisations. 5) Suggestions d'optimisation: utilisez des index, évitez de sélectionner * et utilisez les transactions.

Pour se connecter à une base de données MySQL locale à l'aide de NAVICAT: créez une connexion et définissez le nom de connexion, l'hôte, le port, le nom d'utilisateur et le mot de passe. Testez la connexion pour vous assurer que les paramètres sont corrects. Enregistrez la connexion. Sélectionnez une nouvelle connexion dans la liste de connexions. Double-cliquez sur la base de données à laquelle vous souhaitez vous connecter.
