Page 1 sur 1
[SQLRGLE] insert via une data structure impossible ?
Posté : mer. 10 juin 2009, 11:19:24
par claude.mahe
Bonjour,
Je cherche, sans succès, à effectuer un insert sql en utilisant le contenu d'une data structure.
Le code suivant ne passe pas la compilation (V5R3) :
SQL0117 30 397 L'instruction contient un nombre erroné de valeurs
Code : Tout sélectionner
exec sql Insert INTO ADMA02P0 VALUES(:DS_Fichier);
ca passe en V6R1
Posté : mer. 10 juin 2009, 15:01:37
par cmasse
soit la table suivante
Code : Tout sélectionner
CREATE TABLE FORMATION/TEST (
NOM CHAR (10 ) NOT NULL WITH DEFAULT,
PRENOM CHAR (10 ) NOT NULL WITH DEFAULT,
DATCRT DATE NOT NULL WITH DEFAULT)
le pgm RPG qui suit se compile et s'exécute correctement
Code : Tout sélectionner
Dtestds e ds extname('FORMATION/TEST')
/free
nom = 'Massé';
prenom = 'christian';
datcrt = %date();
exec sql
INSERT INTO FORMATION/TEST VALUES(:testds);
*inlr = *on;
si ca peut aider....
SQLRGLE] insert via une data structure impossible ?
Posté : mer. 10 juin 2009, 15:30:12
par t.lebec
Exemple de table :
CREATE TABLE TLB/TLB01
(CENVIR CHAR (2 ) NOT NULL WITH DEFAULT
CDPAYS CHAR (3 ) NOT NULL WITH DEFAULT,
CDEVIS CHAR (3 ) NOT NULL WITH DEFAULT)
Code qui fonctionne en V5R4 sans utilisation du mode free:
d WTLB01 E DS extname(TLB01) prefix(T1_)
c eval T1_CENVIR = 'TS'
c eval T1_CDPAYS = 'PA1'
c eval T1_CDEVIS = 'DE6'
c/exec sql
c+ INSERT INTO TLB/TLB01
c+ VALUES(:WTLB01)
c/end-exec
c eval *inlr = *on [/code]
(sans texte)
Posté : mer. 10 juin 2009, 17:17:22
par claude.mahe
Bon, en fait ça marche aussi en V5R3...
Par contre, il faut éviter de faire suivre la DATA STRUCTURE par la définition d'une zone unitaire sans S !!!!
Désolé et merci.
(sans texte)
Posté : ven. 12 juin 2009, 15:44:32
par Philippe
Evidemment, sinon la (ou les) zone définie sans "s" immédiatement à la suite de la DS externe fait partie intégrante de cette DS (Data Structure) .
(sans texte)
Posté : lun. 15 juin 2009, 07:16:36
par claude.mahe
Philippe a écrit :Evidemment, sinon la (ou les) zone définie sans "s" immédiatement à la suite de la DS externe fait partie intégrante de cette DS (Data Structure) .
Oui, inutile d'enfoncer le couteau dans la plaie !

(sans texte)
Posté : lun. 15 juin 2009, 19:45:54
par Philippe
Désolé, je ne voulais vexer personne.
(sans texte)
Posté : mar. 16 juin 2009, 07:16:48
par claude.mahe
Philippe a écrit :Désolé, je ne voulais vexer personne.
Pas de problème !