@@ -511,6 +511,7 @@ class AS400Reflector(BaseReflector):
511511 Column ("TABLE_SCHEMA" , CoerceUnicode , key = "tabschema" ),
512512 Column ("TABLE_NAME" , CoerceUnicode , key = "tabname" ),
513513 Column ("TABLE_TYPE" , CoerceUnicode , key = "tabtype" ),
514+ Column ("LONG_COMMENT" , CoerceUnicode , key = "remarks" ),
514515 schema = "QSYS2" )
515516
516517 sys_table_constraints = Table ("SYSCST" , ischema ,
@@ -615,7 +616,13 @@ def has_sequence(self, connection, sequence_name, schema=None):
615616 return c .first () is not None
616617
617618 def get_table_comment (self , connection , table_name , schema = None , ** kw ):
618- raise NotImplementedError ()
619+ current_schema = self .denormalize_name (schema or self .default_schema_name )
620+ table_name = self .denormalize_name (table_name )
621+ systbl = self .sys_tables
622+ query = sql .select (systbl .c .remarks ).\
623+ where (systbl .c .tabschema == current_schema ).\
624+ where (systbl .c .tabname == table_name )
625+ return {'text' : connection .execute (query ).scalar ()}
619626
620627 @reflection .cache
621628 def get_sequence_names (self , connection , schema = None , ** kw ):
@@ -883,6 +890,7 @@ class OS390Reflector(BaseReflector):
883890 Column ("OWNERTYPE" , CoerceUnicode , key = "ownertype" ),
884891 Column ("TYPE" , CoerceUnicode , key = "type" ),
885892 Column ("STATUS" , CoerceUnicode , key = "status" ),
893+ Column ("REMARKS" , CoerceUnicode , key = "remarks" ),
886894 schema = "SYSIBM" )
887895
888896 sys_indexes = Table ("SYSINDEXES" , ischema ,
@@ -992,7 +1000,13 @@ def get_schema_names(self, connection, **kw):
9921000 return [self .normalize_name (r [0 ]) for r in connection .execute (query )]
9931001
9941002 def get_table_comment (self , connection , table_name , schema = None , ** kw ):
995- raise NotImplementedError ()
1003+ current_schema = self .denormalize_name (schema or self .default_schema_name )
1004+ table_name = self .denormalize_name (table_name )
1005+ systbl = self .sys_tables
1006+ query = sql .select (systbl .c .remarks ).\
1007+ where (systbl .c .tabschema == current_schema ).\
1008+ where (systbl .c .tabname == table_name )
1009+ return {'text' : connection .execute (query ).scalar ()}
9961010
9971011 @reflection .cache
9981012 def get_table_names (self , connection , schema = None , ** kw ):
0 commit comments