Oracle Types de données PL/SQL : booléen, nombre, date [exemple]
Qu'est-ce que les types de données PL/SQL ?
Types de données en PL/SQL sont utilisés pour définir comment les données seront stockées, gérées et traitées par Oracle pendant le stockage et le traitement des données. Les types de données sont associés aux contraintes de format de stockage et de plage spécifiques. Dans Oracle, chaque valeur ou constante se voit attribuer un type de données.
La principale différence entre PL/SQL et SQL Les types de données sont les types de données SQL sont limités à la colonne de table tandis que les types de données PL/SQL sont utilisés dans le Blocs PL/SQL. Nous en parlerons plus tard dans le didacticiel.
Voici le schéma des différents Oracle Types de données PL/SQL :

CARACTÈRE PL/SQL Type de données
Ce type de données stocke essentiellement les caractères alphanumériques au format chaîne.
Les valeurs littérales doivent toujours être placées entre guillemets simples lors de leur attribution au type de données CHARACTER.
Ce type de données de caractère est en outre classé comme suit :
- CHAR Type de données (taille de chaîne fixe)
- VARCHAR2 Type de données (taille de chaîne variable)
- Type de données VARCHAR
- NCHAR (taille de chaîne fixe native)
- NVARCHAR2 (taille de chaîne variable native)
- LONG et LONG BRUT
Type de données | Description | Syntaxe |
---|---|---|
CARBONISER | Ce type de données stocke la valeur de la chaîne et la taille de la chaîne est fixée au moment de la déclaration du variable.
|
grade CHAR; manager CHAR (10):= 'guru99'; Explication de la syntaxe :
|
VARCHAR2 | Ce type de données stocke la chaîne, mais la longueur de la chaîne n'est pas fixe.
|
manager VARCHAR2(10) := ‘guru99'; Explication de la syntaxe :
|
VARCHAR | Ceci est synonyme du type de données VARCHAR2.
|
manager VARCHAR(10) := ‘guru99'; Explication de la syntaxe :
|
NCHAR | Ce type de données est identique au type de données CHAR, mais le jeu de caractères sera le jeu de caractères national.
|
native NCHAR(10); Explication de la syntaxe :
|
NVARCHAR2 |
Ce type de données est identique au type de données VARCHAR2, mais le jeu de caractères sera celui du jeu de caractères national.
|
Native var NVARCHAR2(10):='guru99'; Explication de la syntaxe :
|
LONG et LONGRAW | Ce type de données est utilisé pour stocker du texte volumineux ou des données brutes jusqu'à une taille maximale de 2 Go.
|
Large_text LONG; Large_raw LONG RAW; Explication de la syntaxe :
Attention: L'utilisation du type de données LONG n'est pas recommandée par Oracle. Au lieu de cela, le type de données LOB doit être préféré. |
PL/SQL NUMÉRO Type de données
Ce type de données stocke des nombres à virgule fixe ou flottante jusqu'à 38 chiffres de précision. Ce type de données est utilisé pour travailler avec des champs qui contiendront uniquement des données numériques. La variable peut être déclarée soit avec précision et détails décimaux, soit sans ces informations. Il n'est pas nécessaire que les valeurs soient placées entre guillemets lors de l'attribution de ce type de données.
A NUMBER(8,2); B NUMBER(8); C NUMBER;
Explication de la syntaxe :
- Dans ce qui précède, la première déclaration déclare que la variable « A » est de type numérique avec une précision totale de 8 et des chiffres décimaux de 2.
- La deuxième déclaration déclare que la variable « B » est de type numérique avec une précision totale de 8 et sans chiffres décimaux.
- La troisième déclaration est la plus générique, déclare que la variable « C » est de type numérique sans restriction de précision ou de décimales. Il peut contenir jusqu'à 38 chiffres maximum.
Type de données PL/SQL BOOLÉEN
Ce type de données stocke les valeurs logiques. Oracle Le type de données booléen représente VRAI ou FAUX et est principalement utilisé dans les instructions conditionnelles. Il n'est pas nécessaire que les valeurs soient placées entre guillemets lors de l'attribution de ce type de données.
Var1 BOOLEAN;
Explication de la syntaxe :
- Dans ce qui précède, la variable « Var1 » est déclarée comme type de données BOOLEAN. La sortie du code sera vraie ou fausse en fonction de la condition définie.
Type de données PL/SQL DATE
Ce type de données stocke les valeurs au format date, comme date, mois et année. Chaque fois qu'une variable est définie avec le type de données DATE avec la date, elle peut contenir des informations temporelles et, par défaut, les informations temporelles sont définies sur 12:00:00 si elles ne sont pas spécifiées. Les valeurs doivent être placées entre guillemets lors de l'attribution de ce type de données.
La norme Oracle le format de l'heure pour l'entrée et la sortie est « DD-MON-YY » et il est à nouveau défini sur NLS_PARAMETERS (NLS_DATE_FORMAT) au niveau de la session.
newyear DATE:='01-JAN-2015'; current_date DATE:=SYSDATE;
Explication de la syntaxe :
- Dans ce qui précède, la variable « newyear » est déclarée comme type de données DATE et reçoit la valeur du 1er janvier.st, date de 2015.
- La deuxième déclaration déclare la variable current_date comme type de données DATE et attribue la valeur avec la date système actuelle.
- Ces deux variables contiennent les informations temporelles.
Type de données PL/SQL LOB
Ce type de données est principalement utilisé pour stocker et manipuler de gros blocs de données non structurées comme des images, des fichiers multimédias, etc. Oracle préfère LOB au type de données LONG car il est plus flexible que le type de données LONG. Vous trouverez ci-dessous les principaux avantages du type de données LOB par rapport au type de données LONG.
- Le nombre de colonnes dans une table avec le type de données LONG est limité à 1, alors qu'une table n'a aucune restriction sur le nombre de colonnes avec le type de données LOB.
- L'outil d'interface de données accepte le type de données LOB de la table lors de la réplication des données, mais il omet la colonne LONG de la table. Ces colonnes LONG doivent être répliquées manuellement.
- La taille de la colonne LONG est de 2 Go, tandis que LOB peut stocker jusqu'à 128 To.
- Oracle améliore constamment le type de données LOB dans chacune de ses versions conformément aux exigences modernes, tandis que le type de données LONG est constant et ne reçoit pas beaucoup de mises à jour.
Il est donc toujours bon d’utiliser le type de données LOB au lieu du type de données LONG. Voici les différents types de données LOB. Ils peuvent stocker jusqu’à 128 téraoctets.
- BLOB
- CLOB et NCLOB
- FICHIER BF
Type de données | Description | Syntaxe |
---|---|---|
BLOB | Ce type de données stocke les données LOB au format de fichier binaire jusqu'à une taille maximale de 128 To. Cela ne stocke pas les données basées sur les détails du jeu de caractères, de sorte qu'il puisse stocker les données non structurées telles que les objets multimédias, les images, etc. |
Binary_data BLOB; Explication de la syntaxe :
|
CLOB et NCLOB | Le type de données CLOB stocke les données LOB dans le jeu de caractères, tandis que NCLOB stocke les données dans le jeu de caractères natif. Étant donné que ces types de données utilisent un stockage basé sur un jeu de caractères, ils ne peuvent pas stocker les données telles que le multimédia, les images, etc. qui ne peuvent pas être placées dans une chaîne de caractères. La taille maximale de ces types de données est de 128 To. |
Charac_data CLOB; Explication de la syntaxe :
|
FICHIER BF |
|
Résumé
Nous avons couvert les différents types de données simples disponibles dans PL / SQL ainsi que leur syntaxe. Nous découvrirons les types de données complexes dans d’autres sujets.