sqlobject.col module

Col – SQLObject columns

Note that each column object is named BlahBlahCol, and these are used in class definitions. But there’s also a corresponding SOBlahBlahCol object, which is used in SQLObject classes.

An explanation: when a SQLObject subclass is created, the metaclass looks through your class definition for any subclasses of Col. It collects them together, and indexes them to do all the database stuff you like, like the magic attributes and whatnot. It then asks the Col object to create an SOCol object (usually a subclass, actually). The SOCol object contains all the interesting logic, as well as a record of the attribute name you used and the class it is bound to (set by the metaclass).

So, in summary: Col objects are what you define, but SOCol objects are what gets used.

classsqlobject.col.BLOBCol(name=None, **kw)[source]

Bases: StringCol

baseClass

alias of SOBLOBCol

classsqlobject.col.BigIntCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOBigIntCol

classsqlobject.col.BoolCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOBoolCol

classsqlobject.col.Col(name=None, **kw)[source]

Bases: object

baseClass

alias of SOCol

propertyname
withClass(soClass)[source]
classsqlobject.col.CurrencyCol(name=None, **kw)[source]

Bases: DecimalCol

baseClass

alias of SOCurrencyCol

classsqlobject.col.DateCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SODateCol

classsqlobject.col.DateTimeCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SODateTimeCol

staticnow()[source]
classsqlobject.col.DecimalCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SODecimalCol

classsqlobject.col.DecimalStringCol(name=None, **kw)[source]

Bases: StringCol

baseClass

alias of SODecimalStringCol

classsqlobject.col.EnumCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOEnumCol

classsqlobject.col.FloatCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOFloatCol

classsqlobject.col.ForeignKey(foreignKey=None, **kw)[source]

Bases: KeyCol

baseClass

alias of SOForeignKey

classsqlobject.col.IntCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOIntCol

classsqlobject.col.JSONCol(name=None, **kw)[source]

Bases: StringCol

baseClass

alias of SOJSONCol

classsqlobject.col.JsonbCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOJsonbCol

classsqlobject.col.KeyCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOKeyCol

classsqlobject.col.MediumIntCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOMediumIntCol

classsqlobject.col.PickleCol(name=None, **kw)[source]

Bases: BLOBCol

baseClass

alias of SOPickleCol

classsqlobject.col.SOBLOBCol(**kw)[source]

Bases: SOStringCol

createValidators()[source]

Create a list of validators for the column.

classsqlobject.col.SOBigIntCol(**kw)[source]

Bases: SOIntCol

classsqlobject.col.SOBoolCol(name, soClass, creationOrder, dbName=None, default=<class 'sqlobject.sqlbuilder.NoDefault'>, defaultSQL=None, foreignKey=None, alternateID=False, alternateMethodName=None, constraints=None, notNull=<class 'sqlobject.sqlbuilder.NoDefault'>, notNone=<class 'sqlobject.sqlbuilder.NoDefault'>, unique=<class 'sqlobject.sqlbuilder.NoDefault'>, sqlType=None, columnDef=None, validator=None, validator2=None, immutable=False, cascade=None, lazy=False, noCache=False, forceDBName=False, title=None, tags=[], origName=None, dbEncoding=None, extra_vars=None)[source]

Bases: SOCol

autoConstraints()[source]
createValidators()[source]

Create a list of validators for the column.

classsqlobject.col.SOCol(name, soClass, creationOrder, dbName=None, default=<class 'sqlobject.sqlbuilder.NoDefault'>, defaultSQL=None, foreignKey=None, alternateID=False, alternateMethodName=None, constraints=None, notNull=<class 'sqlobject.sqlbuilder.NoDefault'>, notNone=<class 'sqlobject.sqlbuilder.NoDefault'>, unique=<class 'sqlobject.sqlbuilder.NoDefault'>, sqlType=None, columnDef=None, validator=None, validator2=None, immutable=False, cascade=None, lazy=False, noCache=False, forceDBName=False, title=None, tags=[], origName=None, dbEncoding=None, extra_vars=None)[source]

Bases: object

autoConstraints()[source]
createSQL()[source]
createValidators()[source]

Create a list of validators for the column.

propertydefault
firebirdCreateSQL()[source]
getDbEncoding(state, default='utf-8')[source]
propertyjoinName
maxdbCreateSQL()[source]
mssqlCreateSQL(connection=None)[source]
mysqlCreateSQL(connection=None)[source]
postgresCreateSQL()[source]
sqliteCreateSQL()[source]
sybaseCreateSQL()[source]
propertyvalidator
classsqlobject.col.SOCurrencyCol(**kw)[source]

Bases: SODecimalCol

classsqlobject.col.SODateCol(**kw)[source]

Bases: SOCol

createValidators()[source]

Create a validator for the column.

Can be overriden in descendants.

dateFormat='%Y-%m-%d'
classsqlobject.col.SODateTimeCol(**kw)[source]

Bases: SOCol

createValidators()[source]

Create a list of validators for the column.

datetimeFormat='%Y-%m-%d %H:%M:%S.%f'
classsqlobject.col.SODecimalCol(**kw)[source]

Bases: SOCol

createValidators()[source]

Create a list of validators for the column.

classsqlobject.col.SODecimalStringCol(**kw)[source]

Bases: SOStringCol

createValidators()[source]

Create a list of validators for the column.

classsqlobject.col.SOEnumCol(**kw)[source]

Bases: SOCol

autoConstraints()[source]
createValidators()[source]

Create a list of validators for the column.

classsqlobject.col.SOFloatCol(name, soClass, creationOrder, dbName=None, default=<class 'sqlobject.sqlbuilder.NoDefault'>, defaultSQL=None, foreignKey=None, alternateID=False, alternateMethodName=None, constraints=None, notNull=<class 'sqlobject.sqlbuilder.NoDefault'>, notNone=<class 'sqlobject.sqlbuilder.NoDefault'>, unique=<class 'sqlobject.sqlbuilder.NoDefault'>, sqlType=None, columnDef=None, validator=None, validator2=None, immutable=False, cascade=None, lazy=False, noCache=False, forceDBName=False, title=None, tags=[], origName=None, dbEncoding=None, extra_vars=None)[source]

Bases: SOCol

autoConstraints()[source]
createValidators()[source]

Create a list of validators for the column.

classsqlobject.col.SOForeignKey(**kw)[source]

Bases: SOKeyCol

createValidators()[source]

Create a list of validators for the column.

maxdbCreateReferenceConstraint()[source]
maxdbCreateSQL()[source]
mssqlCreateReferenceConstraint()[source]
mssqlCreateSQL(connection=None)[source]
mysqlCreateReferenceConstraint()[source]
mysqlCreateSQL(connection=None)[source]
postgresCreateReferenceConstraint()[source]
postgresCreateSQL()[source]
sqliteCreateSQL()[source]
sybaseCreateReferenceConstraint()[source]
sybaseCreateSQL()[source]
classsqlobject.col.SOIntCol(**kw)[source]

Bases: SOCol

addSQLAttrs(str)[source]
autoConstraints()[source]
createValidators()[source]

Create a list of validators for the column.

classsqlobject.col.SOJSONCol(**kw)[source]

Bases: SOStringCol

createValidators()[source]

Create a list of validators for the column.

classsqlobject.col.SOJsonbCol(name, soClass, creationOrder, dbName=None, default=<class 'sqlobject.sqlbuilder.NoDefault'>, defaultSQL=None, foreignKey=None, alternateID=False, alternateMethodName=None, constraints=None, notNull=<class 'sqlobject.sqlbuilder.NoDefault'>, notNone=<class 'sqlobject.sqlbuilder.NoDefault'>, unique=<class 'sqlobject.sqlbuilder.NoDefault'>, sqlType=None, columnDef=None, validator=None, validator2=None, immutable=False, cascade=None, lazy=False, noCache=False, forceDBName=False, title=None, tags=[], origName=None, dbEncoding=None, extra_vars=None)[source]

Bases: SOCol

createValidators()[source]

Create a list of validators for the column.

classsqlobject.col.SOKeyCol(**kw)[source]

Bases: SOCol

key_type={<class 'int'>: 'INT', <class 'str'>: 'TEXT'}
classsqlobject.col.SOMediumIntCol(**kw)[source]

Bases: SOIntCol

classsqlobject.col.SOPickleCol(**kw)[source]

Bases: SOBLOBCol

createValidators()[source]

Create a list of validators for the column.

classsqlobject.col.SOSetCol(**kw)[source]

Bases: SOCol

autoConstraints()[source]
createValidators()[source]

Create a list of validators for the column.

classsqlobject.col.SOSmallIntCol(**kw)[source]

Bases: SOIntCol

classsqlobject.col.SOStringCol(**kw)[source]

Bases: SOStringLikeCol

createValidators(dataType=None)[source]

Create a list of validators for the column.

classsqlobject.col.SOStringLikeCol(**kw)[source]

Bases: SOCol

A common ancestor for SOStringCol and SOUnicodeCol

autoConstraints()[source]
classsqlobject.col.SOTimeCol(**kw)[source]

Bases: SOCol

createValidators()[source]

Create a list of validators for the column.

timeFormat='%H:%M:%S.%f'
classsqlobject.col.SOTimedeltaCol(name, soClass, creationOrder, dbName=None, default=<class 'sqlobject.sqlbuilder.NoDefault'>, defaultSQL=None, foreignKey=None, alternateID=False, alternateMethodName=None, constraints=None, notNull=<class 'sqlobject.sqlbuilder.NoDefault'>, notNone=<class 'sqlobject.sqlbuilder.NoDefault'>, unique=<class 'sqlobject.sqlbuilder.NoDefault'>, sqlType=None, columnDef=None, validator=None, validator2=None, immutable=False, cascade=None, lazy=False, noCache=False, forceDBName=False, title=None, tags=[], origName=None, dbEncoding=None, extra_vars=None)[source]

Bases: SOCol

createValidators()[source]

Create a list of validators for the column.

classsqlobject.col.SOTimestampCol(**kw)[source]

Bases: SODateTimeCol

Necessary to support MySQL’s use of TIMESTAMP versus DATETIME types

classsqlobject.col.SOTinyIntCol(**kw)[source]

Bases: SOIntCol

classsqlobject.col.SOUnicodeCol(**kw)[source]

Bases: SOStringLikeCol

createValidators()[source]

Create a list of validators for the column.

classsqlobject.col.SOUuidCol(name, soClass, creationOrder, dbName=None, default=<class 'sqlobject.sqlbuilder.NoDefault'>, defaultSQL=None, foreignKey=None, alternateID=False, alternateMethodName=None, constraints=None, notNull=<class 'sqlobject.sqlbuilder.NoDefault'>, notNone=<class 'sqlobject.sqlbuilder.NoDefault'>, unique=<class 'sqlobject.sqlbuilder.NoDefault'>, sqlType=None, columnDef=None, validator=None, validator2=None, immutable=False, cascade=None, lazy=False, noCache=False, forceDBName=False, title=None, tags=[], origName=None, dbEncoding=None, extra_vars=None)[source]

Bases: SOCol

createValidators()[source]

Create a list of validators for the column.

classsqlobject.col.SetCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOSetCol

classsqlobject.col.SmallIntCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOSmallIntCol

classsqlobject.col.StringCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOStringCol

classsqlobject.col.TimeCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOTimeCol

classsqlobject.col.TimedeltaCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOTimedeltaCol

classsqlobject.col.TimestampCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOTimestampCol

classsqlobject.col.TinyIntCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOTinyIntCol

classsqlobject.col.UnicodeCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOUnicodeCol

classsqlobject.col.UuidCol(name=None, **kw)[source]

Bases: Col

baseClass

alias of SOUuidCol

sqlobject.col.use_microseconds(use=True)[source]