comparison RestDbInterface.py @ 58:5ed0769f5ad3

more cleanup in kml generation points can be sorted now
author casties
date Thu, 21 Oct 2010 19:38:41 +0200
parents 2f4c427dec44
children 9fdadb60529f
comparison
equal deleted inserted replaced
57:b47314bcff37 58:5ed0769f5ad3
177 if hasResult: 177 if hasResult:
178 # get all data in an array 178 # get all data in an array
179 data = cur.fetchall() 179 data = cur.fetchall()
180 cur.close() 180 cur.close()
181 #logging.debug("fields: %s"%repr(fields)) 181 #logging.debug("fields: %s"%repr(fields))
182 logging.debug("rows: %s"%repr(data)) 182 #logging.debug("rows: %s"%repr(data))
183 return {"fields":fields, "rows":data} 183 return {"fields":fields, "rows":data}
184 else: 184 else:
185 cur.close() 185 cur.close()
186 return None 186 return None
187 187
314 return "ERROR!! template %s_schema_table not found"%resultFormat 314 return "ERROR!! template %s_schema_table not found"%resultFormat
315 315
316 #data = self.getTable(schema,table) 316 #data = self.getTable(schema,table)
317 return pt(schema=schema,table=table) 317 return pt(schema=schema,table=table)
318 318
319 def getTable(self,schema='public',table=None,username='guest'): 319 def getTable(self,schema='public',table=None,sortBy=1,username='guest'):
320 """return table data""" 320 """return table data"""
321 logging.debug("gettable") 321 logging.debug("gettable")
322 data = self.executeSQL('select * from "%s"."%s"'%(schema,table)) 322 if sortBy:
323 data = self.executeSQL('select * from "%s"."%s" order by %s'%(schema,table,sortBy))
324 else:
325 data = self.executeSQL('select * from "%s"."%s"'%(schema,table))
323 return data 326 return data
324 327
325 def hasTable(self,schema='public',table=None,username='guest'): 328 def hasTable(self,schema='public',table=None,username='guest'):
326 """return if table exists""" 329 """return if table exists"""
327 logging.debug("hastable") 330 logging.debug("hastable")
349 logging.debug("getlistoftables") 352 logging.debug("getlistoftables")
350 # get list of fields and types of db table 353 # get list of fields and types of db table
351 qstr="""SELECT c.relname AS tablename FROM pg_catalog.pg_class c 354 qstr="""SELECT c.relname AS tablename FROM pg_catalog.pg_class c
352 LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace 355 LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace
353 WHERE c.relkind IN ('r','') AND n.nspname NOT IN ('pg_catalog', 'pg_toast') 356 WHERE c.relkind IN ('r','') AND n.nspname NOT IN ('pg_catalog', 'pg_toast')
354 AND pg_catalog.pg_table_is_visible(c.oid)""" 357 AND pg_catalog.pg_table_is_visible(c.oid) ORDER BY 1"""
355 #qstr="select attname, format_type(pg_attribute.atttypid, pg_attribute.atttypmod) from pg_attribute, pg_class where attrelid = pg_class.oid and pg_attribute.attnum > 0" 358 #qstr="select attname, format_type(pg_attribute.atttypid, pg_attribute.atttypmod) from pg_attribute, pg_class where attrelid = pg_class.oid and pg_attribute.attnum > 0"
356 data=self.executeSQL(qstr) 359 data=self.executeSQL(qstr)
357 return data 360 return data
358 361
359 def showListOfSchemas(self,resultFormat='XML',REQUEST=None,RESPONSE=None): 362 def showListOfSchemas(self,resultFormat='XML',REQUEST=None,RESPONSE=None):