Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var mysql = require('mysql');
- var fs = require('fs');
- var connectionProps = JSON.parse(fs.readFileSync('connection.json', 'utf8'));
- var connection = mysql.createConnection({
- host: connectionProps.host,
- user: connectionProps.user,
- password: connectionProps.password,
- database: connectionProps.database
- });
- connection.connect();
- function checkErr(err) {
- if (err) {
- connection.end();
- throw err;
- }
- }
- connection.query('SELECT * FROM TRANSACTION_TYPE', function(err, rows, fields) {
- checkErr(err);
- var typeNameToId = {};
- for (var i = 0; i < rows.length; i++) {
- typeNameToId[rows[i].NAME] = rows[i].ID;
- }
- fs.readFile(process.argv[2] + '.csv', 'utf8', function(err, content) {
- checkErr(err);
- var data = [];
- var lines = content.split(/rn?|n/);
- for (var i = 0; i < lines.length; i++) {
- if (lines[i].trim() === '') {
- continue;
- }
- data.push(lines[i].split(','));
- var typeName = data[data.length - 1][2];
- data[data.length - 1][2] = typeNameToId[typeName];
- var dateTokens = process.argv[2].split('-');
- data[data.length - 1].push(new Date(dateTokens[0], dateTokens[1] - 1, dateTokens[2]));
- }
- connection.query(
- 'INSERT INTO TRANSACTION (DESCRIPTION, AMOUNT, TRANSACTION_TYPE_ID, TRANSACTION_DATE) VALUES ?',
- [data],
- function(err) {
- connection.end();
- if (err) {
- throw err;
- }
- }
- );
- });
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement