|
|
|
Ненужная сортировка при копировании
|
|||
|---|---|---|---|
|
#18+
Приветствую. Использую: PostgreSQL 9.3 на Windows 7 Заполнял справочник имен. 1. При помощи COPY вставлял в промежуточную таблицу данные из csv 2. Из промежуточной переносил запросом: INSERT INTO name_list SELECT id, data FROM souce_csv; Все вставилось. При выгрузке наружу и сверке обнаружил, что во время insert'а нарушился порядок следования строк в целевой таблице. Таблицы смотрел, разница именно между name_list и source_csv. Кроме запроса делал full vacuum analize так как pgadmin попросил сделать его, но это не должно было оказать такое влияние. Внимание вопрос: - Уважаемые знатоки, чем можно заставить инсерт не менять порядок следования строк? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2014, 12:55:36 |
|
||
|
Ненужная сортировка при копировании
|
|||
|---|---|---|---|
|
#18+
PAPA_RimskY, в таблице нет "порядка следования строк" напишите это 100тысячмиллионовмиллиардов раз на доске и не приставайте к людям ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2014, 13:06:22 |
|
||
|
Ненужная сортировка при копировании
|
|||
|---|---|---|---|
|
#18+
лопата, спасибо. то есть и copy не поможет это сохранить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2014, 14:24:12 |
|
||
|
Ненужная сортировка при копировании
|
|||
|---|---|---|---|
|
#18+
PAPA_RimskY, Ничто не поможет. Если сортировка не задана явно в запросе, порядок выдачи строк не определен, т.е. совершенно нормально при последовательных одинаковых запросах без сортировки получать одни и те же строки в разном порядке, особенно, если между ними были какие-то операции с таблицей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2014, 14:29:54 |
|
||
|
Ненужная сортировка при копировании
|
|||
|---|---|---|---|
|
#18+
Ы, значит буду думать как иначе реализовать задачу.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2014, 14:47:09 |
|
||
|
Ненужная сортировка при копировании
|
|||
|---|---|---|---|
|
#18+
PAPA_RimskYЫ, значит буду думать как иначе реализовать задачу.) вы задачу обьясните лучше... а то опять велосипед изобретете :) --Maxim Boguk www.postgresql-consulting.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2014, 14:51:41 |
|
||
|
Ненужная сортировка при копировании
|
|||
|---|---|---|---|
|
#18+
Maxim Boguk, Есть три таблицы(справочника): идентификаторы объектов, имена объектов и связующая таблица. Задача вставить и связать все данные. Проблемы: 1. У объектов может быть от одного до 6 имен 2. Объектов больше 2 тысяч и ручками сопоставлять как-то не круто. Пробовал: Загрузить данные из csv во временную таблицу(дополнительные имена в соответствии с типом в своих колонках). При переносе в основной справочник увидел, что не могу быть уверен в порядке следования строк в нем. Т.к. хотел связующую таблицу экселем делать(а если имена перемешиваются это все усложняет), как это сделать еще проще пока не догадался. Код таблиц: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2014, 15:21:19 |
|
||
|
Ненужная сортировка при копировании
|
|||
|---|---|---|---|
|
#18+
Дабы закрыть тему: Проблему решил экселем, сделал список для каждого типа имен и связал его с айдишником полученным после воздействия COPY на список имен. А потом подсунул полученные столбики цифр в таблицу связи. Теперь видимо нужно триггер или хранимку писать для случая добавления новых комплектов данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2014, 11:57:22 |
|
||
|
|

start [/forum/topic.php?fid=53&fpage=121&tid=1998410]: |
0ms |
get settings: |
6ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
72ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 407ms |

| 0 / 0 |
