code: def create_table(self, connection):
          
          if len(self.columns[0]) == 1:
              # only names of columns specified, no types
              raise NotImplementedError("create_table() not implemented for %r and columns types not specified" % self.table)
          elif len(self.columns[0]) == 2:
              # if columns is specified as (name, type) tuples
              coldefs = ','.join(
                  '{name} {type}'.format(name=name, type=type) for name, type in self.columns
              )
              query = "CREATE TABLE {table} ({coldefs})".format(table=self.table, coldefs=coldefs)
              connection.cursor().execute(query)
docs: Override to provide code for creating the target table.
  
          By default it will be created using types (optionally) specified in columns.
  
          If overridden, use the provided connection object for setting up the table in order to
          create the table and insert data using the same transaction.