SQLAlchemy Column Types


   1    class String(TypeEngine):
   2        def __init__(self, length=None)
   3    
   4    class Integer(TypeEngine)
   5    
   6    class SmallInteger(Integer)
   7    
   8    class Numeric(TypeEngine): 
   9        def __init__(self, precision=10, length=2)
  10    
  11    class Float(Numeric):
  12        def __init__(self, precision=10)
  13    
  14    class DateTime(TypeEngine)
  15    
  16    class Date(TypeEngine)
  17    
  18    class Time(TypeEngine)
  19    
  20    class Binary(TypeEngine): 
  21        def __init__(self, length=None)
  22    
  23    class Boolean(TypeEngine)
  24    
  25    class Unicode(TypeDecorator):
  26        impl = String
  27    
  28    class PickleType(TypeDecorator):
  29        impl = Binary

ENUMが無い以外はほとんどSQLObjectと変わりませんね。

基本的にSQLAlchemyではデフォルトでencodingがutf-8ですので、
Unicodeを使わずにStringで問題ないです。

すべての文字列を意地でもUnicodeにしたいひとは

create_engineの引数にconvert_unicode=Trueを設定しましょう。
基本的には気にしなくて問題ないです。

String等のlengthもあまり気にしなくてよさそうです。
絶対的な容量以外はlengthを指定しなくていいっぽいですね(いいかげん