SQL stream Dans l'exemple de codage, il se comporte comme CPYF, essayez donc de coder de la même manière. Créez un fichier physique de destination de copie. Je l'ai un peu changé parce que c'était un gros problème. (Changez les attributs de LNAME et FNAME, changez TOKUTEN en TENSU, changez le format d'enregistrement)
MYLIB/MEMBER2.PF
      ***************************************************************** 
      *ID de fichier: MEMBER2                                 
      ***************************************************************** 
     A          R MEMBER2R                  TEXT('membre')          
      *                                                                 
     A            ID             3S 0       COLHDG(' ID ')            
     A            LNAME          6G         COLHDG('Nom de famille')            
     A            FNAME         12J         COLHDG('Nom')            
     A            PROF          40O         COLHDG('profil')    
     A            TENSU          7P 3       COLHDG('But')            
SQLstream.js
var jt400 = require("node-jt400");
var JSONStream = require("JSONStream");
var express = require("express");
var app = express();
var pool = jt400.pool({ host: '192.168.X.XXX', user: 'MYUSER', password: 'MYPASS' });
var server = app.listen(8888, function () {
    console.log("curl http://localhost:" + server.address().port + '/~');
});
app.get("/stream", function (req, res, next) {
  pool.createReadStream("select * from member") 
    .pipe(JSONStream.parse([true]))
    .pipe(pool.createWriteStream("insert into member2 (ID,FNAME,LNAME,PROF,TENSU) VALUES(?,?,?,?,?)"));
  res.send('end');
});
Essayez de l'exécuter.
Résultat d'exécution

Le nom et le prénom ont été correctement remplacés et définis.
Recommended Posts