Langage de requête structuré (sql)

Définition - Que signifie SQL (Structured Query Language)?

Le SQL (Structured Query Language) est un langage de programmation généralement utilisé dans les bases de données relationnelles ou les systèmes de gestion de flux de données.

Il a été développé par IBM au début des années 1970 et est maintenant une norme officielle reconnue par l'American National Standards Institute (ANSI) et l'Organisation internationale de normalisation (ISO).

Definir Tech explique le langage de requête structuré (SQL)

SQL est resté un choix toujours populaire pour les utilisateurs de bases de données au fil des ans, principalement en raison de sa facilité d'utilisation et de la manière très efficace dont il interroge, manipule, agrège les données et exécute un large éventail d'autres fonctions pour transformer des collections massives de données structurées en informations utilisables.

Pour cette raison, il a été incorporé dans de nombreux produits de base de données commerciaux, tels que MySQL, Oracle, Sybase, SQL Server, Postgres et autres. En fait, de nombreuses bases de données non relationnelles comme MongoDB et DynamoBD sont appelées produits NoSQL en raison de leur manque de programmation SQL.

Bien que différentes itérations de SQL puissent utiliser une syntaxe différente pour les opérations clés, en général, les commandes de base telles que sélectionner, insérer, mettre à jour et créer sont communes à toutes les versions de SQL. Cela permet à une personne ayant une connaissance de base de SQL de travailler très facilement dans de nombreux environnements différents et d'effectuer une grande variété de tâches.

Trois catégories de commandes SQL

Data Definition Language (DDL)

Cela inclut CREATE (tables, vues, objets, etc.), ALTER et DROP (supprimer).

Manipulation de données Langue (DML)

SELECT, INSERT, UPDATE, DELETE des enregistrements dans les tables.

Langue Control Data (DCL)

Droits d'utilisateur GRANT et / ou REVOKE, etc.

Rationalisation de la recherche et d'autres fonctions

SQL permet également aux utilisateurs de créer des contraintes sur des tables ou des colonnes pour restreindre le type de données qu'elles contiennent. Cela permet de garantir l'exactitude et la pertinence des données et simplifie la gestion globale de la base de données en rationalisant la recherche et d'autres fonctions.

Voici quelques exemples de contraintes SQL:

PAS NUL

Ce qui empêche les colonnes d'avoir une valeur nulle.

UNIQUE

Pour s'assurer que toutes les valeurs sont différentes.

En outre, les administrateurs de base de données peuvent utiliser SQL pour renforcer l'intégrité de la base de données en empêchant la création de lignes en double, en autorisant uniquement l'entrée de données valides, en interdisant la suppression des données liées à plusieurs enregistrements et d'autres fonctions.

Dans le même temps, cependant, SQL fournit un certain nombre d'outils de normalisation conçus pour rationaliser les dépendances des données et, en général, réduire la taille et la portée de la base de données pour la rendre opérationnelle et efficace en termes de ressources.

De toute évidence, SQL n'est pas le meilleur choix pour toutes les applications de base de données, sinon il n'y aurait pas d'alternative. D'une part, alors que SQL avait été efficace à des échelles de données dans les années 1990 et au-delà, la mise en œuvre et les systèmes de gestion de bases de données relationnelles (plutôt que le langage lui-même) ont commencé à faiblir aux niveaux hyperscale au tournant du siècle.

Certains utilisateurs se plaignent également de ses limitations de partitionnement, qui entravent la capacité de diviser de grandes bases de données en bases de données plus petites et plus faciles à gérer.

Ces inconvénients, en fait, sont ce qui a conduit à la création de NoSQL et du NewSQL plus récent, qui tente d'améliorer l'évolutivité du SQL traditionnel sans sacrifier son atomicité, sa cohérence, son isolation et sa durabilité (ACID) inhérentes.