class CsvFastImporter::Database::Mysql
Public Instance Methods
bulk_import(file, table, columns, row_index_column: nil, column_separator:, encoding:)
click to toggle source
# File lib/csv_fast_importer/database/mysql.rb, line 12 def bulk_import(file, table, columns, row_index_column: nil, column_separator:, encoding:) columns_list_query = columns.map { |column| identify(column) }.join(',') execute <<-SQL LOAD DATA LOCAL INFILE '#{File.expand_path(file)}' INTO TABLE #{identify(table)} CHARACTER SET UTF8 FIELDS TERMINATED BY '#{column_separator}' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\\n' IGNORE 1 LINES (#{columns_list_query}) ; SQL query('SELECT ROW_COUNT()') end
verify_compatibility(configuration)
click to toggle source
# File lib/csv_fast_importer/database/mysql.rb, line 8 def verify_compatibility(configuration) raise 'Transactional not supported with MySQL database' if configuration.transactional_forced? end