Neil Conway <neilc@samurai.com> writes:
> The implementation is pretty ugly -- it clutters ExecuteStmt and Query
> with fields that really do not belong there. Per previous discussion, I
> think it would be better to refactor the CREATE TABLE AS implementation
> to be essentially a CREATE TABLE followed by a INSERT ... SELECT.
I kinda wonder why bother at all. I don't see any good reason why
people shouldn't issue two statements.
>> if (stmt->intoTableSpaceName)
>> qry->intoTableSpaceName = pstrdup(stmt->intoTableSpaceName);
>> else
>> qry->intoTableSpaceName = NULL;
> You can omit the "else", as makeNode() zeroes all the fields of the new
> node.
For that matter, why not just
qry->intoTableSpaceName = stmt->intoTableSpaceName;
There's no need for the string-copy operation here, is there?
regards, tom lane