PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

formato di copia a più colonne postgresql Node.js

Con l'immenso aiuto di @jeromew della comunità github.

e corretta implementazione di node-pg-copy-streams (rimuove la complessità del comando di copia). siamo stati in grado di risolvere questo problema

https://github.com/brianc/node-pg-copy -stream/problemi/65 di seguito sono riportati frammenti di codice funzionanti

var sqlcopysyntax = 'COPY srt (starttime, endtime) FROM STDIN  ;

    var stream = client.query(copyFrom(sqlcopysyntax));

    console.log(sqlcopysyntax)


    var interndataset = [
        ['1', '4'],
        ['6', '12.074'],
        ['13.138', '16.183'],
        ['17.226', '21.605'],
        ['22.606', '24.733'],
        ['24.816', '27.027'],
        ['31.657', '33.617'],
        ['34.66', '37.204'],
        ['37.287', '38.58'],
        ['39.456', '43.669'],
        ['43.752', '47.297'],
        ['47.381', '49.55'],


    ];

    var started = false;
        var internmap = through2.obj(function(arr, enc, cb) {
            var rowText = (started ? '\n' : '') + arr.join('\t');
            started = true;

            cb(null, rowText);
        })

        data.forEach(function(r) {
            internmap.write(r);
        })

    internmap.end();

    internmap.pipe(stream);