
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
30.07.2010, 17:29
|
|||
|---|---|---|---|
|
|||
DataTable.Merge() с первичным ключом |
|||
|
#18+
Приветствую! Есть исходная таблица (DataTable): IDVal...10...20... В ней колонка ID указана как Primary Key. Затем программно генерируется вторая DataTable: IDVal1100240350 Задача - обновить колонку Val в первой таблице значениями из второй. Вот максимально упрощенный код генерации второй таблицы и слияния: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Я понимаю, что можно решить проблему если добавить в код генерации dt2 проверку существования ключа каждой строки в dt1, но мне кажется, что это некрасиво. Есть ли другое, элегантное решение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.08.2010, 10:06
|
|||
|---|---|---|---|
DataTable.Merge() с первичным ключом |
|||
|
#18+
Не понял, какой экспепшен? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.08.2010, 14:07
|
|||
|---|---|---|---|
|
|||
DataTable.Merge() с первичным ключом |
|||
|
#18+
Прошу прощения, эксепшн возникал по другой причине, которую я уже устранил (ключевая колонка неправильно называлась). Но проблема все равно осталась, в таблице dt1 примерно 20 колонок, и после операции Merge в ней появляется еще одна запись (Id=3) с заполненными ID и Val а всё остальное - пусто. Моя задача - объединять таблицы так, чтобы лишние строки отбрасывались, то есть в итоге получилась такая таблица: IDVal...1100...240... На данный момент я реализовал заполнение таблицы dt2 следующим образом (код сильно упрощён): Код: plaintext 1. 2. 3. 4. 5. 6. Если иначе нельзя никак, тогда закроем тему... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.08.2010, 14:34
|
|||
|---|---|---|---|
DataTable.Merge() с первичным ключом |
|||
|
#18+
Ну это уже не мерж, а подобие джойна :) Предлагаю выкрутиться так, чтобы не делать лишних циклов. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=17&mobile=1&tid=1351162]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 232ms |
| total: | 346ms |

| 0 / 0 |
