Ejemplo n.º 1
0
 def make_insert_statement(self):
     sql_table = sql.make_table(self.csv_table, "csvsql")
     statement = sql.make_insert_statement(sql_table, self.csv_table._prepare_rows_for_serialization()[0])
     self.assertEqual(
         statement,
         u"INSERT INTO test_table (text, integer, datetime, empty_column) VALUES ('Chicago Reader', 40, '2008-01-01T04:40:00', NULL);",
     )
Ejemplo n.º 2
0
 def make_insert_statement(self):
     sql_table = sql.make_table(self.csv_table, 'csvsql')
     statement = sql.make_insert_statement(
         sql_table,
         self.csv_table._prepare_rows_for_serialization()[0])
     self.assertEqual(
         statement,
         u'INSERT INTO test_table (text, integer, datetime, empty_column) VALUES (\'Chicago Reader\', 40, \'2008-01-01T04:40:00\', NULL);'
     )
Ejemplo n.º 3
0
    def main(self):
        if self.args.file.name != "<stdin>":
            # Use filename as table name
            table_name = os.path.splitext(os.path.split(self.args.file.name)[1])[0]
        else:
            table_name = "csvsql_table"

        csv_table = table.Table.from_csv(
            self.args.file, name=table_name, snifflimit=self.args.snifflimit, **self.reader_kwargs
        )
        sql_table = sql.make_table(csv_table)

        self.output_file.write(
            (u"%s\n" % sql.make_create_table_statement(sql_table, dialect=self.args.dialect)).encode("utf-8")
        )

        if self.args.inserts:
            self.output_file.write("\n")
            for row in csv_table.to_rows(serialize_dates=True):
                self.output_file.write(
                    (u"%s\n" % sql.make_insert_statement(sql_table, row, dialect=self.args.dialect)).encode("utf-8")
                )