var common = require('../../common'); var connection = common.createConnection(); var assert = require('assert'); common.useTestDb(connection); var table = 'load_data_test'; connection.query([ 'CREATE TEMPORARY TABLE `' + table + '` (', '`id` int(11) unsigned NOT NULL AUTO_INCREMENT,', '`title` varchar(255),', 'PRIMARY KEY (`id`)', ') ENGINE=InnoDB DEFAULT CHARSET=utf8' ].join('\n')); var path = common.fixtures + '/data.csv'; var sql = 'LOAD DATA LOCAL INFILE ? INTO TABLE ' + table + ' ' + 'FIELDS TERMINATED BY ? (id, title)'; var ok; connection.query(sql, [path, ','], function(err, _ok) { if (err) throw err; ok = _ok; }); var rows; connection.query('SELECT * FROM ' + table, function(err, _rows) { if (err) throw err; rows = _rows; }); // Try to load a file that does not exist to see if we handle this properly var loadErr; var loadResult; var badPath = common.fixtures + '/does_not_exist.csv'; connection.query(sql, [badPath, ','], function(err, result) { loadErr = err; loadResult = result; }); connection.end(); process.on('exit', function() { assert.equal(ok.affectedRows, 3); assert.equal(rows.length, 3); assert.equal(rows[0].id, 1); assert.equal(rows[0].title, 'Hello World'); assert.equal(loadErr.code, 'ENOENT'); assert.equal(loadResult.affectedRows, 0); });