|
|
|
непонятное поведение .AddNew ADO-рекордсета
|
|||
|---|---|---|---|
|
#18+
Давно не брал я шашек в руки, а задача была тривиальная - из кода заполнить таблицу числовыми значениями, идущими подряд. В таблице первичный ключ - это самое значение. Пытался добавлять через открытие ADO-рекордсета в цикле с известным нижним и верхним пределом. Алгоритм - если значение уже есть, пытаемся добавить следующее (по номеру ошибки делаем Resume Next) и т.д. до верхнего предела. Столкнулся с неведомой хренью - если первое значение вызвало эту ошибку (повторяющиеся значения уник. индекса), то все последующие в цикле ТАКЖЕ НЕ ДОБАВЛЯЮТСЯ в таблицу, хотя их там и нет. Уже голову сломал, где я ошибся. См. тестовый код. Если кто будет тестить, запускать процедуру Test и смотреть вывод в Immediate. Внесение rst.update в цикл ничего не изменило. Ясно, что какая-то примитивная ошибка - но я ее не вижу :-( Код: vbnet 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. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2014, 16:54 |
|
||
|
непонятное поведение .AddNew ADO-рекордсета
|
|||
|---|---|---|---|
|
#18+
голову_сломал, rst.Cancel нужно сделать после ошибки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2014, 18:04 |
|
||
|
непонятное поведение .AddNew ADO-рекордсета
|
|||
|---|---|---|---|
|
#18+
Cancel, спасибо, хотел было порадоваться, но нет, волшебное слово не помогло. Ща попробую проверить коллекцию errors currentproject.connection, если что даст. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2014, 20:10 |
|
||
|
непонятное поведение .AddNew ADO-рекордсета
|
|||
|---|---|---|---|
|
#18+
Код: vbnet 1. 2. Не? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2014, 22:16 |
|
||
|
непонятное поведение .AddNew ADO-рекордсета
|
|||
|---|---|---|---|
|
#18+
nord-woolf Код: vbnet 1. 2. Не? немного не так :) вот так работает Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2014, 23:20 |
|
||
|
непонятное поведение .AddNew ADO-рекордсета
|
|||
|---|---|---|---|
|
#18+
nord-woolf Код: vbnet 1. 2. Не? да! все так, спасибо. А вот .Update вообще не нужен,как выяснилось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2014, 12:44 |
|
||
|
непонятное поведение .AddNew ADO-рекордсета
|
|||
|---|---|---|---|
|
#18+
голову_сломалnord-woolf Код: vbnet 1. 2. Не? да! все так, спасибо. А вот .Update вообще не нужен,как выяснилось. Вот, блин , действительно, работает! Прошу пардона у nord_woolf-а, вчера неправильно ,видимо, проверил его совет и начал свой "огород городить" :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2014, 15:46 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=38787261&tid=1616108]: |
0ms |
get settings: |
9ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
39ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
26ms |
get tp. blocked users: |
1ms |
| others: | 223ms |
| total: | 319ms |

| 0 / 0 |
