I'm sure I saw a thread on this just after generated columns were added to sqlite but I've been unable to find it. Has anyone found a way round this that doesn't involve supplying the names of all non-virtual columns? There's a lot of convenience lost when a virtual column is added to a table as * can no longer be used in select => insert, create table as etc. Is there not a case for a new ^ command (e.g. 'select # from t') that only returns non-virtual columns? Or maybe a virtual table that does the same?