Question: How can I create a `for` loop for this, in VB.Net? (shown below)

the code below adds values to my chart and is populated by labels that are stored on the windows form.

```
With .Points
    .AddXY(0, 0)
    .AddXY(1, LblWkEff1.Text)
    .AddXY(2, LblWkEff2.Text)
    .AddXY(3, LblWkEff3.Text)
    .AddXY(4, LblWkEff4.Text)
    .AddXY(5, LblWkEff5.Text)
    .AddXY(6, LblWkEff6.Text)
    .AddXY(7, LblWkEff7.Text)
    .AddXY(8, LblWkEff8.Text)
    .AddXY(9, LblWkEff9.Text)
    .AddXY(10, LblWkEff10.Text)
End With

```

Answer: 
Nothing is wrong with the above code. In fact, you don't even need `autoincrement=True` or `db.Sequence('seq_reg_id', start=1, increment=1),` as SQLAlchemy will automatically set the first `Integer` PK column that's not marked as a FK as `autoincrement=True`.

Here, I've put together a working setup based on yours. SQLAlechemy's ORM will take care of generating id's and populating objects with them *if you use the Declarative Base based class* that you've defined to create instances of your object.

```
from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.debug = True
app.config['SQLALCHEMY_DATABASE_URI'] = 'postgresql://user:password@localhost/testdb'
app.config['SQLALCHEMY_ECHO'] = True
db = SQLAlchemy(app)

class Region(db.Model):
    __tablename__ = 'regions'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(100))

db.drop_all()
db.create_all()

region = Region(name='Over Yonder Thar')
app.logger.info(region.id) # currently None, before persistence

db.session.add(region)
db.session.commit()
app.logger.info(region.id) # gets assigned an id of 1 after being persisted

region2 = Region(name='Yet Another Up Yar')
db.session.add(region2)
db.session.commit()
app.logger.info(region2.id) # and 2

if __name__ == '__main__':
    app.run(port=9001)

```
So I landed here with an issue that my SQLite table wasn't auto-incrementing the primary key. I have a slightly complex use case where I want to use postgres in production but sqlite for testing to make life a bit easier when continuously deploying.

It turns out SQLite doesn't like columns defined as BigIntegers, and for incrementing to work they should be set as Integers. Remarkably SQLAlchemy can handle this scenario as follows using the with\_variant function. Thought this may be useful for someone:

```
id = db.Column(db.BigInteger().with_variant(db.Integer, "sqlite"), primary_key=True)

```

Further details here <https://docs.sqlalchemy.org/en/13/dialects/sqlite.html>