Qu'est-ce qu'un langage de définition de données?
Un langage de définition de données est un langage de programmation ou de script informatique qui définit une structure de données. Par définition, ces langages doivent faire trois choses: créer, supprimer et modifier des structures de données. Ce qu’ils font en dehors de ces trois domaines n’a aucune importance, dans la mesure où ils s’acquittent de ces trois tâches. Toute langue peut être un langage de définition de données, mais le terme est le plus souvent appliqué aux schémas en langage de requête structuré (SQL) et au langage de balisage extensible (XML).
Lorsque le terme langage de définition de données est entré en usage, il s’appliquait à un modèle élaboré par la Conférence pour les langages de système de données (Codasyl). Le processus définissait deux domaines principaux du développement de la structure de données: le langage de définition de données en faisait la structure réelle et le langage de manipulation de données définissait les méthodes de placement des données dans la structure. Depuis lors, ces deux termes se sont développés et sont devenus des termes génériques pour les processus qu’ils couvrent.
Les termes génériques s'appliquent désormais à toutes les langues qui remplissent leurs fonctions d'origine. SQL et XML exécutent toutes les tâches requises et fournissent de nombreuses fonctionnalités absentes du modèle d'origine car elles n'avaient pas encore été inventées. D'autres langues fournissent également ces fonctionnalités; ils sont juste utilisés beaucoup moins souvent.
Pour être un langage de définition de données, le langage doit fournir trois fonctions. La première fonction principale est la construction de structures de données; Fondamentalement, ces tableaux sont conçus pour conserver des groupes d’informations spécifiques. Ils apparaissent souvent comme une feuille de calcul, conservant des pages d'informations référencées. Par exemple, la feuille peut contenir une liste des clients d'une entreprise et une liste des produits disponibles en haut. La feuille contiendrait une liste des moments où ces clients achetaient des produits individuels au bas de la table.
La prochaine fonction principale est la suppression des structures de données. Ce n'est pas la même chose que la suppression d'une base de données ou d'un fichier entier; c'est un processus beaucoup plus sélectif. Il peut supprimer une page d'informations spécifique ou une partie entière d'un tableau multidimensionnel. Dans les deux cas, les données doivent être supprimées sans affecter les autres structures de données, même si elles sont toutes conservées dans le même fichier.
La dernière fonction principale est la modification d'une structure de données. C'est une large catégorie qui couvre beaucoup de situations. Une table peut avoir des colonnes ajoutées ou renommées, ou une base de données entière peut avoir besoin d'être divisée en deux bases de données différentes. Dans tous les cas, ils doivent être modifiés de manière à ce qu'aucune information ne soit perdue, détruite ou créée au cours du processus. Cela empêche les informations anormales d'entrer dans le système de données.