Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const knex = require('knex')({
- client: 'pg',
- useNullAsDefault: true,
- connection: {
- host : '127.0.0.1',
- user : 'postgres',
- password : '123',
- database : 'postgres'
- },
- });
- const path = require('path');
- const folder = path.resolve('../_output/demo_data');
- const fs = require('fs');
- const files = fs.readdirSync(folder);
- const csvParser = require("csv-parse");
- const transform = require('stream-transform');
- if (!files.length) {
- console.log('No files');
- process.exit();
- }
- const transformer = transform((row, callback) => {
- //Object.keys(row).forEach((key) => { if (row[key] === '') row[key] = null });
- //const insert = knex.insert(row);
- //if (file.includes('data-subjects')) {
- //insert.into('data_subject');
- // }
- /* if (file.includes('repos')) {
- insert.into('repository');
- }
- if (file.includes('repo_types')) {
- insert.into('repository_type');
- }*/
- // insert.then(() => {
- callback();
- //});
- });
- const readFilesPromises = files.map((file) => {
- return new Promise((resolve, reject) => {
- fs.createReadStream(folder + '/'+ file)
- .pipe(csvParser({ columns: true }))
- .pipe(transformer)
- .on('finish', () => { console.log("FINISH READ " + file); resolve() })
- .on('error', (e) => { console.log("ERROR READ " + file); reject(e) });
- })
- });
- Promise.all(readFilesPromises).then(() => {
- console.log('Complete');
- process.exit();
- }).catch((err) => {
- console.error(err);
- process.exit();
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement