> Tech > Insertion de valeurs CLOB

Insertion de valeurs CLOB

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Comme mentionné précédemment, on utilise la même syntaxe pour insérer une valeur chaîne dans une colonne CLOB, que celle qu'on utiliserait pour une colonne Character ou VarChar. Par exemple :

Insert Into TestLob
Values( 1, 'x1', 'x2' )

On peut, bien entendu, utiliser des variables hôtes caractères. Pour

des valeurs
dont la longueur dépasse 64 Ko, on peut utiliser des expressions de concaténation
dans une instruction Insert en V4R5 (ou ultérieure), pour composer une valeur
à  partir de variable hôtes multiples :



Insert Into TestLob

Values( :PkVar,

:Char1Var || Char2Var,

:Char3Var )



Avant la V4R5, l’instruction Insert n’admettait pas d’expression dans la clause
Values. Il fallait donc utiliser une instruction Update, comme la suivante, pour
effectuer la concaténation après insertion de la ligne :



Update TestLob

Set Clob1 = :Char1Var || :Char2Var

Where PkCol = :PkVar



Autre possibilité : utiliser une variable de référence de fichier, déclarée comme
décrit précédemment. Le code en M, figure 1, montre comment définir les sous-champs,
et l’instruction Insert en N montre comment la variable de référence de fichier
peut être utilisée dans une instruction Insert. SQL/400 copie tout le contenu
du fichier IFS et le stocke comme la valeur de colonne. Notons que SQL ne définit
pas le sous-champ _DL (CLOB1REF-DL, par exemple) sur une opération Insert.

Téléchargez cette ressource

Préparer l’entreprise aux technologies interconnectées

Préparer l’entreprise aux technologies interconnectées

Avec la « quatrième révolution industrielle », les environnements hyperconnectés entraînent de nouveaux risques en matière de sécurité. Découvrez, dans ce guide Kaspersky, comment faire face à cette nouvelle ère de vulnérabilité.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010