-
Notifications
You must be signed in to change notification settings - Fork 20
ESGFNode|HowTo
Stephen Pascoe edited this page Apr 9, 2014
·
6 revisions
Wiki Reorganisation |
---|
This page has been classified for reorganisation. It has been given the category MOVE. |
The content of this page will be revised and moved to one or more other pages in the new wiki structure. |
You will need your SQLAlchemy database
connection URL which can be found in your ~/.esgcet/esg.ini
file as the
option dburl
.
_ Note this code was run using esgcet-2.0 _
[ 1] >>> import sqlalchemy, sqlalchemy.orm
[ 2] >>> import esgcet.model
[ 3] >>> engine = sqlalchemy.create_engine(DB_URL)
[ 4] >>> Session = sqlalchemy.orm.sessionmaker(bind=engine)
[ 5] >>> sess = Session()
You can now query the database by asking for ORM classes defined in esgcet.model
. For instance to read all datasets into a list and interrogate
the first dataset do:
[ 1] >>> q = sess.query(esgcet.model.Dataset).all()
[ 2] >>> q[0]
[ 3] >>> ds = q[0]
[ 5] >>> ds.experiment
[ 6] 'test_exp'
[ 7] >>> ds.name
[ 8] 'pcmdi.badc.test.mytest'
[ 9] >>> ds.events
[ 10], object_id=1, object_name=pcmdi.badc.test.mytest, object_version=1, event=CREATE_DATASET>]