Skip to content
Space Cowboy edited this page Sep 18, 2013 · 2 revisions

to do

persons=Table('Person').add_cols(Column('firstname').text.not_null.default("''"),\ Column('lastname').text.not_null.default("''"),\ Column('bio').text.not_null.default("''"))\ .add_constraints(Unique('firstname').on_conflict_replace) log=Table('Log').add_cols(Column('pId').integer.not_null, Column('firstname').text.not_null, Column('lastname').text.not_null, Column('bio').text.not_null, Column('time').timestamp.default_current_timestamp) # Create a trigger that keeps the log up to date # I recommend using temp triggers unless you see a performance hit trigger=Trigger('tr_log').temp.if_not_exists# Here I have given the wrong table name on purpose. Notice that the sql # creation will fail because there is no table named bob. trigger.after.update_on("bob") #trigger.after.update_on(log.name) # Raw sql trigger.do_sql("INSERT INTO {table} ({cols}) VALUES ({oldcols})"\
.format(table=log.name, cols=log.list_column_names(exclude=['_id','time']),
oldcols=persons.list_column_names(exclude=[],
prefix="old.")))
# Let's try to create the SQL st=SQLTester()
st.add_tables(persons, log)
st.add_triggers(trigger)
st.test_create()

Creating your schema

Testing your schema

Generate the java files for your Android project

Clone this wiki locally