附录2:调用示例
from sqlobject import *
connection_string = 'postgres://vbadmin:vast_123@127.0.0.1:5432/vastbase'
connection = connectionForURI(connection_string)
sqlhub.processConnection = connection
class Person(SQLObject):
firstName = StringCol()
middleInitial = StringCol(length=1,default=None)
lastName = StringCol()
Person._connection.debug = False
def create_p():
Person.createTable()
def insert_p():
Person(firstName='John1',lastName='Doe')
Person(firstName='John',lastName='Doe')
p=Person(firstName='Bob',lastName='Hope')
p.middleInitial = 'Q'
Person(firstName='John',lastName='David')
def update_p():
p2 = Person.get(1)
p2.middleInitial='F'
p2.set(firstName='Robert',lastName='Hope Jr.')
def delete_p():
Person.delete(1)
Person.deleteMany(OR(Person.q.firstName == 'bob',
Person.q.firstName == 'fred'))
Person.deleteBy(firstName='Robert')
def select_p():
peeps = Person.select(Person.q.firstName=='John')
print(list(peeps))
peeps = Person.select(
OR(Person.q.firstName =='John',
LIKE(Person.q.lastName,'%Hope%')))
print(list(peeps))
peeps = Person.select("""person.first_name = 'John' AND
person.last_name LIKE 'D%'""")
print(list(peeps))
peeps = Person.selectBy(firstName = 'John')
print(list(peeps))
def drop_p():
Person.dropTable(ifExists=True)
create_p()
insert_p()
update_p()
select_p()
delete_p()
select_p()
drop_p()