insert with multiple targetLists
От | Neil Conway |
---|---|
Тема | insert with multiple targetLists |
Дата | |
Msg-id | 20020501191656.3b2d651b.nconway@klamath.dyndns.org обсуждение исходный текст |
Ответы |
Re: insert with multiple targetLists
|
Список | pgsql-hackers |
Hi all, I've been taking a look at fixing the TODO item: o Allow INSERT INTO tab (col1, ..) VALUES (val1, ..), (val2, ..) My first plan of attack was to replace the current list of ResTargets in InsertStmt with a list of lists. The problem with that approach is that: (a) the InsertStmt is converted to a Query. I could also change Query to use a list of lists (instead of a list)for holding TargetEntry items, but that would be ugly (since Query is generic, and this would only be neededfor Inserts) (b) modifying Query would mean a lot of work (e.g. in the rewriter), adapting all the places that expect targetListto be a list to instead use a list of lists. Once again, this would be messy. So, that seems like a bad idea. ISTM that a better way to do this would be to parse the InsertStmt, and then execute an INSERT for every targetList in the query. For example: INSERT INTO t1 (c1) VALUES (1), (2); would be executed in a similar fashion to: INSERT INTO t1 (c1) VALUES (1); INSERT INTO t1 (c1) VALUES (2); Does this sound reasonable? Any suggestions would be welcome. Cheers, Neil -- Neil Conway <neilconway@rogers.com> PGP Key ID: DB3C29FC
В списке pgsql-hackers по дате отправления: