Qu'est-ce que les types de données PL / SQL?
Un type de données est associé au format de stockage et aux contraintes de plage spécifiques. Dans Oracle, chaque valeur ou constante est affectée d'un type de données.
Fondamentalement, il définit la manière dont les données sont stockées, traitées et traitées par Oracle pendant le stockage et le traitement des données.
La principale différence entre les types de données PL / SQL et SQL est que le type de données SQL est limité à la colonne de table tandis que les types de données PL / SQL sont utilisés dans les blocs PL / SQL. Plus d'informations à ce sujet plus loin dans le didacticiel.
Voici le diagramme des différents types de données en PL / SQL
Dans ce didacticiel, vous apprendrez-
- Type de données CHARACTER
- NUMBER type de données
- Type de données BOOLEAN
- DATE Type de données
- Type de données LOB
Type de données CHARACTER:
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 affectation 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 RAW
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 de la 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 le même que le type de données CHAR, mais le jeu de caractères sera celui du 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 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:
|
NUMBER 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 ne contiendront que des données numériques. La variable peut être déclarée avec précision et détails décimaux ou sans ces informations. Les valeurs n'ont pas besoin d'être 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 de données numérique avec une précision totale de 8 et des chiffres décimaux 2.
- La deuxième déclaration déclare que la variable «B» est de type de données 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 de données numérique sans restriction de précision ni de décimales. Il peut prendre jusqu'à un maximum de 38 chiffres.
Type de données BOOLEAN:
Ce type de données stocke les valeurs logiques. Il représente VRAI ou FAUX et est principalement utilisé dans les instructions conditionnelles. Les valeurs n'ont pas besoin d'être 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 l'ensemble de conditions.
DATE Type de données:
Ce type de données stocke les valeurs au format de 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 d'heure et par défaut, les informations d'heure 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.
Le format d'heure Oracle standard 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é comme type de données DATE et affecté la valeur du 1 janvier er , la date 2015.
- La deuxième déclaration déclare la variable current_date comme type de données DATE et lui attribue la valeur avec la date système actuelle.
- Ces deux variables contiennent les informations de temps.
Type de données 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 lieu d'un type de données LONG car il est plus flexible que le type de données LONG. Voici les quelques principaux avantages de 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 un 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 pendant la réplication de 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 en fonction des 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.
- GOUTTE
- CLOB et NCLOB
- BFILE
Type de données | Description | Syntaxe |
---|---|---|
GOUTTE |
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, afin de pouvoir 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:
|
BFILE |
|
Résumé
Nous avons couvert les différents types de données simples disponibles en PL / SQL ainsi que leur syntaxe. Nous découvrirons les types de données complexes dans d'autres rubriques.