On Tue, Apr 16, 2019 at 10:35:13AM +0200, Markus Elfring <markus.elfr...@web.de> wrote: > >> Will such software extensions become more feasible? > > > > Yes, I think so. > > Thanks for such positive feedback.
Welcome! :-) > > The API perhaps would be simple, something like > > > > class SQLObject(...): > > @classmethod > > def createAsSelectSQL(cls, selectFrom): > > ... > > How do you think about the clarification for additional classes? Sorry, I don't understand. > > @classmethod > > def createAsSelect(cls, selectFrom): > > conn = connection or cls._connection > > query = cls.createAsSelectSQL(selectFrom) > > conn.query(query) > > > > where ``selectFrom`` is ``SelectResults`` instance. The method shod > > construct ``CREATE TABLE ... AS SELECT ...`` but it also must construct > > a list of columns (instances of ``col.Col`` classes) and call > > ``cls.sqlmeta.addColumn(columnDef)`` for every column in the list. > > Will the determination of involved data structures need any further > software design considerations? That can only be determined during design and implementation. > > And here I foresee a problem. It's possible to create a table in the > > database but how to recreate the class with all columns on the second > > run of the program or in another program that will use the class? > > Are you used to fiddle with database reflection (or introspection)? SQLObject does some limited introspection. It can determine if a table exists[1] and get the list[2][3] of columns and joins. 1. https://github.com/sqlobject/sqlobject/blob/ed64be0ed032055b0a6613fe3051d83a74ded566/sqlobject/main.py#L1471 2. http://sqlobject.org/SQLObject.html#automatic-class-generation 3. https://github.com/sqlobject/sqlobject/blob/ed64be0ed032055b0a6613fe3051d83a74ded566/sqlobject/postgres/pgconnection.py#L346 > Regards, > Markus Oleg. -- Oleg Broytman https://phdru.name/ p...@phdru.name Programmers don't die, they just GOSUB without RETURN. _______________________________________________ sqlobject-discuss mailing list sqlobject-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sqlobject-discuss