Information processing systems - Database Language SQL with integrity enhancement

Systèmes de traitement de l'information — Langage de bases de données SQL avec intégrité accrue

General Information

Status
Withdrawn
Publication Date
19-Apr-1989
Withdrawal Date
19-Apr-1989
Current Stage
9599 - Withdrawal of International Standard
Start Date
19-Nov-1992
Completion Date
30-Oct-2025
Ref Project

Relations

Standard
ISO/IEC 9075:1989 - Systemes de traitement de l'information -- Langage de bases de données SQL avec intégrité accrue
French language
120 pages
sale 15% off
Preview
sale 15% off
Preview

Frequently Asked Questions

ISO/IEC 9075:1989 is a standard published by the International Organization for Standardization (ISO). Its full title is "Information processing systems - Database Language SQL with integrity enhancement". This standard covers: Information processing systems - Database Language SQL with integrity enhancement

Information processing systems - Database Language SQL with integrity enhancement

ISO/IEC 9075:1989 is classified under the following ICS (International Classification for Standards) categories: 35.060 - Languages used in information technology. The ICS classification helps identify the subject area and facilitates finding related standards.

ISO/IEC 9075:1989 has the following relationships with other standards: It is inter standard links to ISO/IEC 9075:1992. Understanding these relationships helps ensure you are using the most current and applicable version of the standard.

You can purchase ISO/IEC 9075:1989 directly from iTeh Standards. The document is available in PDF format and is delivered instantly after payment. Add the standard to your cart and complete the secure checkout process. iTeh Standards is an authorized distributor of ISO standards.

Standards Content (Sample)


NORME
ISOICEI
I N T E R NAT I O NA LE
Deuxième édition
1989-04-01
~
Systèmes de traitement de l'information -
Langage de bases de données SOL contenant
l'amélioration sur l'intégrité
Information processing systems - Database Language SOL with integrity
enhancement
ISO/CEI 9075 : 1989 (FI
Avant-propos
L'ISO (Organisation internationale de normalisation) et la CE1 (Commission électro-
technique internationale) forment ensemble un système consacré à la normalisation
internationale considérée comme un tout. Les organismes nationaux membres de I'ISO
ou de la CE1 participent au développement de Normes internationales par I'intermé-
diaire des comités techniques créés par l'organisation concernée afin de s'occuper des
différents domaines particuliers de l'activité technique. Les comités techniques de
I'ISO et de la CE1 collaborent dans des domaines d'intérêt commun. D'autres organisa-
tions internationales, gouvernementales ou non gouvernementales, en liaison avec
I'ISO et la CE1 participent également aux travaux.
Dans le domaine des technologies de l'information, I'ISO et la CE1 ont créé un comité
technique mixte, I'ISO/CEI JTC 1. Les projets de Normes internationales adoptés par
le comité technique mixte sont soumis aux organismes nationaux pour approbation,
avant leur acceptation comme Normes internationales. Les Normes internationales
sont approuvées conformément aux procédures qui requièrent l'approbation de 75 %
au moins des organismes nationaux votants.
La Norme internationale ISO/CEI 9075 a été élaborée par le comité technique
mixte ISO/CEI JTC 1, Technologies de I'information.
Cette deuxième édition annule et remplace la première édition (IS0 9075 : 1987). qui
comprend désormais l'additif 1.
L'attention des utilisateurs est attirée sur le fait que toutes les Normes internationales
sont de temps en temps soumises à révision et que toute référence faite à une autre
Norme internationale dans le présent document implique qu'il s'agit, sauf indication
contraire, de la dernière édition.
Les annexes A, B, C, D, E et F de la présente Norme internationale sont données uni-
quement à titre d'information.
0 ISO/CEI 1989
Droits de reproduction réservés. Aucune partie de cette publication ne peut être reproduite ni
utilisée SOUS quelque forme que ce soit et par aucun procédé, électronique OU mécanique,
y compris la photocopie et les microfilms, sans l'accord écrit de l'éditeur.
ISO/CEI Copyright Office 0 Case postale 56 O CH-1211 Genève 20 0 Suisse
Version française tirée en 1990
Imprimé en Suisse
ISO/CEI 9075 : 1989 (FI
SOMMAIRE
Page
Domaine et champ d'application .
1 1
Références . : .
2 3
Généralités .
3 5
Organisation .
3.1 5
Notation .
3.2 5
Conventions .
3.3 5
Conformité . 6
3.4
Concepts . 7
Ensembles . 7
4.1
Types de données . 7
4.2
Colonnes .
4.3 8
Tables .
4.4 8
Contraintes d'intégrité' .
4.5 8
Schémas . 9
4.6
La base de données . 9
4.7
Modules .
4.8
Procédures . 9
4.9
Paramètres . IO
4.1 O
Langages de programmation normalisés .
4.1 1 10
Curseurs .
4.12 10
Instructions .
4.13 11
Syntaxe d'incrustation . ' .
4.14 11
Privilèges .
4.15 11
Transactions .
4.16 12
Eléments communs . 13
.
5.1 13
. 14
5.2
. 16
5.3
Noms .
5.4 18
. 20
5.5
et . 22
5.6
. 24
5.7
. 25
5.8
5.9 . 27
5.10 . 29
5.1 1 . 30
.
5.12
.
5.13 32
...
5.14 cprédicat comme> . 33
cprédicat nub . 35
5.1 5
cprédicat quantifié> . 36
5.16
5.17 .
5.18 .
5.19 .
5.20 .
5.21 .
5.22 .
5.23 . 45
.
5.24 46
5.25 . 48
Langage de définition de schéma . 51
. 51
6.1
6.2 6.3 . 53
. 54
6.4
. 55
6.5
. 56
6.6
. 57
6.7
. 59
6.8
.
6.9
.
6.10
Langage de Module . 65
. 65
7.1
. 66
7.2
. 67
7.3
Langage de manipulation de données .
8 71
cinstruction fermetures .
8.1 71
.
8.2 72
.
8.3 73
.
8.4 76
cinstruction suppression après recherches .
8.5 77
.
8.6 78
cinstruction insertion> .
8.7 80
ci nstruction ouverture> .
8.8 82
cinstruction retour arrière> .
8.9 83
.
8.10 84
cinstruction mise à jour après positionnement> .
8.1 1 86
.
8.12 88
Niveaux .
ANNEXE A - .
ANNEXE B - .
ANNEXE C - cinstruction SQL dans un programme COBOL> .
ANNEXE D - cinstruction SQL dans un programme FORTRAN, .
ANNEXE E - cinstruction SOL dans un programme Pascab . 104
ANNEXE F - Index .
iv
NORME INTERNATIONALE
ISOKEI 9075 : 1989 (FI
Systèmes de traitement de l’information - Langage de
bases de données SQL contenant l’amélioration sur
l’intégrité
I Domaine et champ d’application
La présente norme définit la syntaxe et la sémantique de deux langages de base de données :
a) un langage de définition de schéma (SQL-LDD), pour la déclaration des structures et des contraintes
SQL ;
d’intégrité d’une base de données
b) un langage de définition de modules et un langage de manipulation de données (SQL-LMD), pour la
déclaration des procédures de la base de données et des instructions exécutables d’un programme
d’application base de données spécifique.
La présente norme définit les structures logiques de données et les opérations de base pour une base
de données SOL. Elle fournit les fonctions nécessaires pour concevoir, accéder à, maintenir, contrôler et
protéger la base de données.
La présente norme constitue un moyen de rendre portable les définitions de base de données et de pro-
grammes d’application entre mises en oeuvre conformes.
La présente norme spécifie deux niveaux et une caractéristique d’amélioration de l’intégrité. Le niveau 2
est le langage SQL complet sauf la caractéristique d‘amélioration de l‘intégrité. Le niveau 1 est le sous
ensemble du niveau 2 définit à l’article 9.
NOTE - II est prévu de développer des additifs à cette norme. Ces additifs porteront en particulier sur la
gestion des transactions, la spécification de certaines règles définies par le réalisateur, les pos-
sibilités de manipulation des caractères et la prise en compte de jeux de caractères nationaux.
La caractéristique d’amélioration de l’intégrité est un moyen de spécifier :
les contraintes référentielles entre les tables qui doivent être appliquées,
1)
les contraintes de contrôle à appliquer aux lignes d’une table,
2)
une valeur par défaut pour une colonne quand une ligne est insérée dans une table.
0 3)
Les annexes de la présente norme définissent la syntaxe d’incrustation pour inclure des instructions du
langage de manipulation de données SOL dans un autre programme d‘application lui aussi normalisé.
Une telle syntaxe d’incrustation est définie pour être une notation abrégée d‘un programme d’applica-
tion standardisé dans lequel les instructions SQL incrustées ont été remplacées par des «appels» expli-
cites à des procédures base de données contenant les instructions SQL.
La présente norme s‘applique aux réalisations existant dans un environnement pouvant inclure des lan-
gages de programmation d’application, des langages de requête utilisateur, des générateurs de rapport,
des dictionnaires de données, des bibliothèques de programmes, des systèmes de communication dis-
tribués ainsi que des outils variés de conception de base de données, d’administration de données et
d ’0 pt i mi sat io n de pe rfo rma n ces.
ISO/CEI 9075 : 1989 (FI
2 Références
Langages de programmation -FORTRAN, (reprise par I’ISO de la norme ANSI X3.9).
IS0 1539,
IS0 1989, Langages de programmation - COBOL, (reprise par I’ISO de la norme ANSI X3.23).
Langages de programmation - PL//, (reprise par I’ISO de la norme ANSI X3.53).
IS0 6’160,
IS0 7185, Langages de programmation - Pascal, (reprise par I‘ISO de la norme britannique
6192 pour le texte anglais).
ISO/CEI 9075 : 1989 (FI
ISO/CEI 9075 : 1989 (FI
3 Généralités
3.1 Organisation
Les articles 3.2, ((Notation)) et 3.3, ((Conventions)) définissent les notations et conventions utilisées dans
~
la présente norme.
I
L’article 3.4, ((Conformité)) définit les critères de conformité.
L’article 4, «Concepts» définit les termes et présente les concepts utilisés dans la définition de SQL.
L’article 5, ((Eléments communs)) définit les éléments du langage apparaissant dans plusieurs parties du
langage SQL.
L’article 6, ((Langage de définition de schéma)) définit les possibilités SQL de spécification de base de
données.
L‘article 7, ((Langage de module)) définit les modules et procédures SOL.
L‘article 8, ((Langage de manipulation de données)) définit les instructions de manipulation de données
SQL.
L’article 9, «Niveaux» définit les deux niveaux de SQL et la caractéristique d’amélioration de l’intégrité.
3.2 Notation
La notation syntaxique utilisée dans la présente norme est la BNF (((Forme normale de Backus)) ou
((forme Backus-Naur))), avec les extensions suivantes :
a) les crochets ([I) indiquent un élément optionnel ;
b) les (.I indiquent un élément qui peut être répété une ou plusieurs fois ;
c) les accolades (U) regroupent des séquences d’éléments.
Dans la syntaxe BNF, un symbole de production est déclaré ((contenir)) un symbole de production
cB> si apparaît quelque part dans l’expansion de
. Si contient , alors est ((contenu
dans))
. Si contient , alors est le ((contenant)) , symbole de production de cB>.
3.3 Conventions
Les éléments syntaxiques de la présente norme sont spécifiés en termes de :
I 0
a) fonction : une courte déclaration sur l’objet de l’élément ;
b) format : une définition en BNF de la syntaxe de l’élément ;
c) règles syntaxiques : les contraintes syntaxiques additionnelles non exprimées dans la BNF et
~
auxquelles l‘élément devra satisfaire ;
d) règles générales : la spécification en séquence de l’effet à l’exécution de l’élément sur la base de
I
données.
Dans les règles syntaxiques, le terme ((doit)) définit les conditions qui doivent être vérifiées, du point de
vue de la syntaxe, par les éléments conformes du langage SOL. Le traitement du langage SOL non
conforme au format ou aux règles syntaxiques est défini par le réalisateur.
Dans les règles générales, le terme ((doit)) définit les conditions testées au cours de l’exécution des
instructions SOL. Si toutes les conditions sont vérifiées, alors l‘instruction est exécutée avec succès et le
paramètre SQLCODE est mis à un nombre positif défini. Si une au moins des conditions n’est pas
vérifiée, alors l’instruction n‘est pas exécutée avec succès et n’a pas d’effet sur la base de données ; le
paramètre SQLCODE est mis à un nombre négatif défini par le réalisateur.
Une réalisation conforme n’est pas supposée exécuter la séquence exacte des actions définies par les
règles générales, mais doit produire le même effet que cette séquence sur la base de données.
ISO/CEI 9075 : 1989 (FI
Le terme ((effectivement)) est utilisé dans les règles générales pour souligner les actions dont les effets
peuvent être obtenus par d'autres moyens dans le cadre d'une réalisation.
Le terme ((objet persistant)) est utilisé pour caractériser des objets tels que s et s
crées et détruits par des mécanismes définis par le réalisateur.
3.4 Conformité
La présente norme définit le langage SQL et les réalisations SOL conformes. Un langage SQL conforme
doit se soumettre au format BNF ainsi qu'aux règles syntaxiques associées. Une réalisation SQL
conforme doit exécuter le langage SOL conforme en respectant les règles générales.
Une réalisation déclarant la conformité SQL-LDD doit prendre en compte le SQL-LDD () au
niveau 1 ou au niveau 2.
Une réalisation déclarant la conformité SQL-LMD doit prendre en compte soit au niveau 1, soit au
niveau 2 :
a) l'invocation directe des instructions du langage de manipulation de données SQL ( SOL>) ; et/ou
b) le langage de définition de modules () ; et/ou
c) une ou plusieurs :
incrustation SQL dans COBOL (),
1)
incrustation SQL dans FORTRAN (),
2)
incrustation SOL dans Pascal ( 3)
incrustation SQL dans PL/I ().
4)
Une réalisation déclarant la conformité SQL totale doit fournir une conformité SQL-LDD et SQL-LMD,
soit au niveau 1, soit au niveau 2.
Une réalisation conforme peut fournir des facilités additionnelles ou des options non spécifiées par la
présente norme. Une réalisation reste conforme même si elle prévoit des options de l'utilisateur pour
exécuter un langage SQL non conforme ou si elle prévoit d'exécuter un langage SQL conforme d'une
manière non conforme.
Une déclaration de conformité à la présente norme doit établir :
a) quels types de conformité sont pris en compte parmi les suivants
à SOL, au niveau 1,
1) conformité totale
conformité totale à SOL, au niveau 2,
2)
conformité au SQL-LDD, au niveau 1,
3)
conformité totale au SQL-LDD, au niveau 2,
4)
conformité au SQL-LMD, au niveau 1,
5)
conformité au SQL-LMD, au niveau 2 ;
6)
b) lesquelles des facilités suivantes sont mises en oeuvre :
exécution directe des instructions du langage de manipulation de données SOL,
1)
2) modules langage (),
incrustations SOL dans COBOL (),
3)
incrustations SOL dans FORTRAN (),
4)
incrustations SOL dans Pascal ( 5)
PU1 () ;
incrustations SOL dans
6)
c) si la caractéristique d'amélioration de l'intégrité est mise en oeuvre.
la méthode ou le moment de la liaison entre les programmes
La présente norme ne définit pas
d'application et les composants du système de gestion de la base de données.
ISO/CEI 9075 : 1989 (FI
4 Concepts
4.1 Ensembles
L
Un ensemble est une collection non ordonnée d’objets distincts.
Un multi-ensemble est une collection non ordonnée d‘objets non nécessairement distincts.
Une séquence est une collection ordonnée d’objets non nécessairement distincts.
La cardinalité d’une collection est le nombre d‘objets de cette collection. A moins que l’inverse soit
précisé, toute collection peut être vide.
4.2 Types de données
Un type de données est un ensemble de valeurs représentables. La représentation logique d’une valeur
est un . La représentation physique d‘une valeur est laissée à la discrétion du réalisateur.
Une valeur est primitive, du fait qu’elle n‘a aucune subdivision logique dans le cadre de cette norme.
Une valeur est une valeur nulle ou une valeur non nulle.
Une valeur nulle est une valeur spéciale d’un type de donnée, définie par le réalisateur et est distincte
de toutes les valeurs non nulles de ce type.
Une valeur non nulle est une chaîne de caractères ou un nombre. Une chaîne de Caractères et un
nombre ne sont pas des valeurs comparables.
4.2.1 Chaînes de caractères
Une chaîne de caractères est composée d‘une séquence de caractères pris dans un ensemble de
caractères défini par le réalisateur. Une chaîne de caractère a une longueur, qui est un entier positif
définissant le nombre de caractères de la séquence.
Toutes les chaînes de caractères sont comparables. Une chaîne de caractères est identique à une autre
si et seulement si elle est égale à cette chaîne de caractère en accord avec les règles de comparaison
définies en 5.1 1, .
4.2.2 Nombres
Un nombre est soit une valeur numérique exacte soit une valeur numérique approchée. Tous les
nombres sont des valeurs comparables.
Une valeur numérique exacte a une précision et une graduation. La précision est un entier positif qui
détermine le nombre de chiffres décimaux significatifç. La graduation est un entier non négatif. Une
graduation de O indique que le nombre est un entier. Pour la graduation N, la valeur exacte est la valeur
entière de la partie significative multipliée par 10 à la puissance N.
Une valeur approchée est constituée d’une mantisse et d‘un exposant. La mantisse est une valeur
numérique signée et l‘exposant est un entier signé précisant la magnitude de la mantisse. Une valeur
numérique approchée a une précision. La précision est l’entier positif qui définit le nombre de chiffre
décimaux significatifs de la mantisse.
Quand une valeur numérique exacte est assignée à un élément de donnée ou à un paramètre
représentant une valeur numérique exacte, une approximation de sa valeur préservant les premiers
chiffres significatifs est représentée dans le type de donnée cible. La valeur est convertie pour avoir la
précision et la graduation de la donnée cible.
Quand une valeur exacte ou approchée est assignée à un élément de donnée ou à un paramètre
représentant une valeur approchée, une approximation de sa valeur est représentée dans le type de
donnée cible. La valeur est convertie pour avoir la precision de la donnée cible.
isO/CEI 9075 : 1989 (FI
4.3 Colonnes
Une colonne est un multi-ensemble de valeurs pouvant varier dans le temps. Toutes les valeurs d'une
même colonne appartiennent au même type de donnée et sont des valeurs d'une même table. La valeur
d'une colonne est le plus petit élément de donnée pouvant être choisi dans une table et le plus petit
élément de donnée pouvant être mis à jour.
Une colonne a une description et une position ordinale dans une table. La description de la colonne
inclut son type de donnée et une indication précisant si la colonne est contrainte à contenir uniquement
des valeurs non nulles. La description d'une colonne chaîne de caractères définit son attribut de
longueur. La description d'une colonne numérique approchée définit la précision de ses nombres. La
description d'une colonne numérique exacte définit la précision et la graduation de ses nombres.
Une colonne nommée est une colonne d'une table nommée ou une colonne qui hérite de la description
d'une colonne nommée. La description d'une colonne nommée inclut son nom.
4.4 Tables
Une table est un multi-ensemble de lignes. Une ligne est une séquence non vide de valeurs. Chaque
ligne d'une même table a la même cardinalité et contient une valeur pour chaque colonne de cette
table.
La nième valeur de chaque ligne d'une table est la valeur de la nième colonne de cette table. La ligne
est le plus petit élément de donnée pouvant être ajouté à ou supprimé d'une table.
Le degré d'une table est le nombre de colonnes de cette table. A tout moment, le degré de la table est
le même que la cardinalité de chacune de ses lignes et la cardinalité d'une table est la même que la
cardinalité de chacune de ses colonnes.
Une table a une description. Cette description comprend une description de chacune de ses colonnes.
Une table de base est une table nommée définie par une cdéfinition de table>. La description d'une
table de base comprend son nom.
Une table dérivée est une table dérivée directement ou indirectement d'une ou de plusieurs autres
tables par évaluation d'une . Les valeurs d'une table dérivée sont celles de la
ou des tables d'origine lors de la dérivation.
Une table vue est une table dérivée nommée définie par une . La description d'une
table vue comprend son nom.
Une table est soit en mode mise à jour soit en mode lecture uniquement. Les opérations d'insertion, de
mise à jour, de suppression sont permises pour les tables en mode mise à jour et non permises pour
les tables en mode lecture uniquement.
Une table groupée est un ensemble de groupes obtenu par évaluation d'une cclause groupement par>.
Un groupe est un multi-ensemble de lignes dans lequel toutes les valeurs des colonnes regroupées
sont égales. Une table groupée peut être considérée comme une collection de tables. Les fonctions sur
ensemble obtenue à partir d'une table peuvent agir sur les tables individuelles comprises dans la table
groupée.
Une vue groupée est une table vue obtenue à partir d'une table sur ensemble groupée.
4.5 Contraintes d'intégrité
Les contraintes d'intégrité définissent les états valides de la base de données à l'aide de contraintes
appliquées aux valeurs des tables de base.
Les contraintes d'intégrité sont effectivement testées à l'issue de l'exécution de chaque .
Si la table de base associée à une contrainte d'intégrité ne satisfait pas a la contrainte d'intégrité, alors
l' reste sans effet et le paramètre SQLCODE est mis à un nombre négatif défini par le
réalisateur.
ISO/CEI 9075 : 1989 (FI
Une implique que deux lignes d‘une (ou de) colonne(s) spécifiée(s)
d‘une table n‘aient pas la même valeur.
Une spécification NOT NULL implique qu’aucune des valeurs d‘une colonne ne soit une valeur nulle.
Une implique que, pour chaque ligne d‘une table spécifiée, la
((table de référence)), les valeurs d‘une (de) colonne(s) spécifiée(s) ont au moins une valeur nulle ou
sont de même valeur qu’une (que des) colonnes spécifiées dans la ligne d’une autre table, dite ((table
référencée)). La table de référence et la table référencée peuvent être les mêmes.
Une implique qu’une spécifiée ne
donne un résultat faux dans aucune ligne d‘une table.
4.6 Schémas
Un est un objet persistant défini par le langage de définition de schéma. II comprend une
, toutes les , , et
connus du système pour un défini dans un
environnement. Le concept d’environnement est défini par le réalisateur.
Les tables, vues et privilèges définis par un sont considérés comme étant la ((propriété de))
ou «créés par)) l’ associé à ce .
NOTE - Une réalisation peut fournir des facilités (telles que DROP TABLE, DROP VIEW, ALTER TABLE
et REVOKE) permettant la définition des tables, des vues et des privilèges pour un
graduellement dans le temps. La présente norme s‘intéresse uniquement aux
représentant les définitions connues par le système à un instant donné.
4.7 La base de données
La base de données est la collection de toutes les données définies par le dans un
environnement. Le concept d‘environnement est défini par le réalisateur.
4.8 Modules
Un est un objet persistant défini par le langage de module. Un comprend, en
option, un , une , une , zéro ou
plusieurs curseurs définis par et une ou plusieurs (s).
Un programme d’application est un segment de code exécutable comprenant éventuellement de
multiple sous-programmes. Un seul est associé à un programme d’application durant son
exécution. Un programme d’application doit être associé à au moins un . La façon dont cette
association est définie, y compris la prise en compte possible d’instructions d’exécution définies par le
réalisateur, est définie par le réalisateur.
4.9 Procédures
Une est composée d’un , d’une séquence de paramètre>(s) et d’une simple .
Un programme d’application associé à un peut faire référence à la ou les (s) de
ce par une instruction d’«appel)) spécifiant le de la , et
fournissant une séquence de valeurs de paramètres correspondant en nombre et en
à la (s) de la . L‘appel d‘une entraîne l’exécution
de qu‘elle contient.
ISO/CEI 9075 : 1989 (FI
4.10 Paramétres
Un paramètre est déclaré dans une par une . La de paramètre> spécifie le de sa valeur. Un paramètre, soit suppose connue, soit
fournit la valeur de l'argument correspondant dans l'appel de cette .
4.10.1 Paramètre SQLCODE
Le paramètre SQLCODE est un paramètre entier spécial. Sa valeur correspond à un code statut qui
indique soit qu'un appel de la s'est effectué de manière satisfaisante, soit qu'une condition
d'exception a été rencontrée durant l'exécution de cette .
4.10.2 Paramétres indicateurs
Un paramètre indicateur est un paramètre entier qui est spécifié après un autre paramètre. Son premier
usage est d'indiquer si la valeur que l'autre paramètre suppose ou fournit, est une valeur nulle.
4.1 1 Langages de programmation normalises
La présente norme définit les actions de (s) en (s), lorsque ces cprocédure>(s) a
sont appelées par des programmes se conformant à des langages de programmation normalisés
spécifiques. Les termes ((programme COBOL normalisé)), ((programme FORTRAN normalisé)),
((programme Pascal normalisé)) et ((programme PL/I normalisé)) font référence à des programmes
à l'article 2.
vérifiant respectivement les critères de conformité des normes citées
4.12 Curseurs
Un curseur est spécifié par une cdéclaration de curseur>.
Pour chaque cdéclaration de curseur> dans un , un curseur est effectivement créé quand une
transaction (voir en 4.16 «Transactions»), faisant référence au , est initialisée ; if est détruit
quand cette transaction est terminée.
Un curseur est soit dans l'état ouvert, soit dans l'état fermé. L'état initial d'un curseur est l'état fermé.
à l'état ouvert par une cinstruction ouverture> et retourne à l'état fermé par une
Un curseur passe
cinstruction fermeture>, une cinstruction exécution,, ou une cinstruction retour arrière>.
Un curseur dans l'état ouvert désigne une table, un ordre des lignes de cette table et une position
relative dans cet ordre. Si la ne précise pas une cclause ordre par> ou si la
ne peut pas spécifier complètement l'ordre des lignes, alors l'ordre de la ligne est
défini partiellement ou totalement par le réalisateur.
A l'intérieur d'une transaction, où l'ordre des lignes n'est pas défini complètement ou partiellement par
une cclause ordre par>, la position relative de deux lignes va être généralement identique chaque fois
que le curseur est ouvert.
L'ordre peut changer d'une fois à l'autre si les valeurs de la base de donnée ou si les valeurs des
paramètres référencés dans la cspécification de requête> de cdéclaration de curseur> est différente.
Dans des transactions différentes, même quand les valeurs de la base de donnée et les valeurs des
paramètres référencés dans la cspécification de requête> de cdéclaration de curseurs sont les mêmes,
l'ordre des lignes désigné par la même cspécification de curseur> et cinstruction d'ouverture> peut être
différent.
Un curseur dans l'état ouvert est mis soit avant une certaine ligne, soit sur une certaine ligne, soit après
la dernière ligne. Si le curseur est sur une ligne, alors cette ligne est la ligne courante du curseur. Un
curseur peut être avant la première ligne ou après la dernière ligne, même si la table est vide.
ISOKEI 9075 : 1989 (FI
Une avance la position d’un curseur ouvert à la ligne suivante de l‘ordre repéré
par le curseur et récupère les valeurs des colonnes de cette ligne. Une positionnement> met à jour la ligne courante du curseur. Une positionnement> supprime la ligne courante du curseur.
Si un curseur est avant une ligne et qu’une nouvelle ligne est insérée à cette position, alors l’effet
éventuel sur la position du curseur est défini par le réalisateur.
Si un curseur est sur une ligne ou avant une ligne et que cette ligne est supprimée, alors le curseur est
positionné avant la ligne qui est immédiatement après la position de la ligne supprimée. Si une telle
ligne est inexistante, le curseur est alors positionné après la dernière ligne.
Si une erreur apparaît durant l‘exécution d’une identifiant un curseur ouvert, alors
l’effet éventuel, tant sur la position du curseur que sur son état, est défini par le réalisateur.
Une table de travail est une table résultant de l‘ouverture d‘un curseur. Le réalisateur détermine si
l’ouverture d’un curseur crée une table de travail de base, ou une vue de travail.
Chaque ligne d’une table vue de travail est dérivée seulement quand le curseur est mis sur cette ligne.
Une table de travail de base est créée quand le curseur est ouvert et détruite quand le curseur est
fermé.
4.13 Instructions
Une définit une opération de base de données ou une opération de curseur. Une
fournit des valeurs d‘une table. Une insére des lignes
dans une table. Une ou une positionnement> met à jour les valeurs de lignes d’une table. Une recherche> ou une supprime des lignes d’une table.
4.14 Syntaxe d’incrustation
Un ( COBOL>, , Pascab, ) est un programme d‘application constitué
d’instructions utilisant la syntaxe du langage de programmation et d‘instructions utilisant la syntaxe
SQL. La syntaxe du langage de programmation doit se conformer aux règles spécifiques du langage de
programmation. La syntaxe SQL doit être constituée d‘une ou de plusieurs SOL> et, en option, d’une ou de plusieurs l’expression dans une forme hybride d’applications base de données dans lesquelles une ou des
sont incrustées directement dans un programme d’application. Un tel programme
d‘application hybride est défini comme équivalent à un programme d’application normalisé dans lequel
la ou les ont été remplacées par des procédures normalisées ou des appels de
sous-programmes à une ou des (s) SQL dans un SQL séparé.
4.15 Privileges
Un privilège autorise l’exécution d’une catégorie donnée d’ sur une table spécifique, ou sur une
vue, au moyen d‘un spécifié. Les (s) pouvant être spécifiées sont
INSERT, DELETE, SELECT, UPDATE et REFERENCES.
Un est spécifié pour chaque et chaque .
L’ défini pour un doit être différent de l‘ d’autorisation> de n’importe quel autre dans le même environnement. L‘ d’autorisation> d‘un est le ((propriétaire)) de toutes les tables et toutes les vues définies dans
ce schéma.
ISO/CEI 9075 : 1989 (F)
Les tables et les vues sont désignées par des . Un est constitué d'un
et d'un . L' identifie le
dans lequel la table ou la vue désignée par le a été définie. Les tables et les
vues définies dans différents s peuvent avoir le même .
Si une référence à un ne contient pas expressément un ,
alors l' du ou du correspondant est défini par défaut.
L' d'un a tous les privilèges sur les tables et les vues définies
dans ce .
Un avec un donné peut contenir des privilèges> qui accordent des privilèges a d'autres . Les privilèges
accordés peuvent s'appliquer à des tables et à des vues définies dans le courant, ou peuvent
être accordés à l' par d'autres s. La clause WITH GRANT OPTION
d'une précise si le bénéficiaire d'un privilège peut l'accorder aux autres.
Un définit un , l', qui
doit posséder les privilèges spécifiés pour chaque dans le .
4.16 Transactions
Une transaction est une séquence d'opérations, opérations base de données incluses, qui est atomique
en ce qui concerne la reprise et les accès concurrents. Une transaction commence quand une
est appelée et qu'il n'y a pas de transaction en cours. Une transaction se termine par une
ou une . Si une transaction se termine par une
, alors tous les changements effectués sur la base de données par la transaction
deviennent accesssibles a toutes les transactions concurrentes. Si une transaction se termine par une
, alors tous les changements de la base de données produits par cette
transaction sont annulés. Les changements exécutés ne peuvent être annulés. Les changements
effectués sur la base de données par une transaction sont perceptibles par cette transaction, mais ne
peuvent pas être perçus par les autres transactions tant que cette transaction ne se termine pas par une
.
L'exécution de
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.

Loading comments...