title: Sqlalchemy core, insert multiple rows from a tuple instead of dict
body: <p>I have data in a 2D tuple (or say coming from a Numpy table), and need to insert it into an SQL table. Using Sqlalchemy Core with SQLite, how can I efficiently and simply insert this data into my table? </p>
  
  <p>Take i.e. from @eclaird;</p>
  
  <pre><code>engine = sa.create_engine('sqlite://', echo=True)
  metadata = sa.MetaData()
  
  widgets_table = sa.Table('widgets', metadata,
      sa.Column('id', sa.Integer, primary_key=True),
      sa.Column('bar', sa.String(50)),
      sa.Column('biz', sa.Boolean),
      sa.Column('baz', sa.Integer),
      )
  metadata.create_all(engine)
  
  # Assuming this is the data where None holds place for primary key
  my_data = [
      (None, "Test", True, 3),
      (None, "Test", True, 3),
      ]
  </code></pre>
  
  <p>So far I'm at <a href="http://docs.sqlalchemy.org/en/latest/core/expression_api.html#sqlalchemy.sql.expression.Insert.values" rel="noreferrer">this point</a> in the docs; so I have; </p>
  
  <pre><code>engine.execute(widgets_table.insert().values((None, "Test", True, 3)))
  </code></pre>
  
  <p>Which works. But I want to insert many rows at once such as </p>
  
  <pre><code>engine.execute(widgets_table.insert().values(((None, "Test", True, 3), (None, "Test", True, 3))))
  </code></pre>
  
  <p>But then error; </p>
  
  <blockquote>
    <p>The 'sqlite' dialect with current database version settings does not support in-place multirow inserts.</p>
  </blockquote>
  
  <p>Also tried;</p>
  
  <pre><code>insert = widgets_table.insert()
  
  engine.execute(insert, [
                      (None, "Test", True, 3), 
                      (None, "Test", True, 3) 
                      ])
  </code></pre>
  
  <p>With error;</p>
  
  <blockquote>
    <p>AttributeError: 'tuple' object has no attribute 'keys'</p>
  </blockquote>
  
  <p>As a recent convert to SQLalch, I'm a bit lost here.</p>