|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Здравствуйте. Уже второй день бьюсь об стену непонимания. Есть хранимая процедура, которая возвращает таблицу: Код: sql 1. 2. 3. 4. 5. 6.
Затем я пытаюсь вывести на лист excel результат этой процедуры. Сама процедура вызывается, правильно отрабатывает, но вывод в excel не работает. Причем если перед "Range("A3").CopyFromRecordset rst" не написать "If rst.EOF Then MsgBox "null"", то ничего не выведется, а если написать, выведется первая строка таблицы. Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 20:02 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
А шапка всегда корректно заполняется? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 21:16 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Всё кроме вывода работает, данные в БД изменяются и изменяются верно. Что понимается под шапкой? И да, в самой СУБД всё выводится нормально. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 21:20 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Shocker.Pro, не туда ответил. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 21:21 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
za4tooo Код: vbnet 1. 2. 3. 4.
вот этот вывод шапки - он отрабатывает? Шапка появляется? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 21:28 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Shocker.Pro, да, шапка есть, и первая строка есть, но не всегда. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 21:29 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
А если в процедуре оставить только SELECT * FROM Table, все работает? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 21:57 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Shocker.Pro, неа, результат аналогичный. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 22:22 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Ну значит пустой рекордсет приходит. Что будет, если просто выполнить Код: vbnet 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 23:11 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Shocker.Pro, в ячейку А3 записалось 5 ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 23:32 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Значит на стороне экселя всё в порядке. Следующий шаг Код: vbnet 1. 2.
При этом в указанной таблице должны быть данные ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 23:37 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Еще слегка смущает вот этоza4tooo Код: sql 1.
никогда так не делал за бессмысленностью. Может это на что-то умудряется влиять.... ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 23:39 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Shocker.Pro, да, вывел как нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 23:39 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Shocker.Pro, вообще, странно, она периодически начала завершаться с ошибкой "Превышен максимальный уровень вложенности хранимой процедуры, функции, триггера или представления (ограничение 32).", хотя внутри никаких циклов и вызовов нету. У меня с VBA туговато, это вообще первое, что я делаю на нем. Код: sql 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 23:48 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
za4toooУ меня с VBA туговатоа причем тут VBA? тут косяк в SQL Смотри триггеры на таблице EMPLOYEE ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2019, 23:52 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Shocker.Pro, их нету ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2019, 00:05 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Теперь в процедуре пропал SET NOCOUNT ON, он-то точно должен быть ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2019, 00:40 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
za4toooShocker.Pro, вообще, странно, она периодически начала завершаться с ошибкой "Превышен максимальный уровень вложенности хранимой процедуры, функции, триггера или представления (ограничение 32).", хотя внутри никаких циклов и вызовов нету. У меня с VBA туговато, это вообще первое, что я делаю на нем. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
вот эту фигню из процедуры уберите Она хоть за пределами ХП, но срабатывает :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2019, 08:05 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
HandKotвот эту фигню из процедуры уберите Она хоть за пределами ХП, но срабатывает :-)А ты прав, видимо. У процедуры ведь необязательно наличие begin-end, так что при отсутствии GO перед exec - этот exec вполне законно будет в теле процедуры при неграмотном вызове этого пакета ) ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2019, 08:49 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Shocker.Pro, это я поторопился и сюда корявую версию скопировал, результат такой же, когда set nocount on на месте и перед вызовом стоит GO или я его вообще убираю оттуда. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2019, 20:26 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Ну так по аналогии дальше режь. Сначала вызов процедуры с простейшим запросом внутри без параметров, потом постепенно добавляешь логику, пока работать не перестанет ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2019, 20:51 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Shocker.Pro, так вот это уже не работает и результат такой же- выводится первая строка и шапка. Может нужно как то явно указывать, что процедура возвращает таблицу? Код: sql 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2019, 21:11 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
za4toooShocker.Pro, так вот это уже не работает и результат такой же- выводится первая строка и шапка. Может нужно как то явно указывать, что процедура возвращает таблицу? Код: sql 1. 2. 3. 4. 5. 6.
А как вызывается эта процедура? Через Command? А если вызвать через Код: vbnet 1.
? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2019, 22:55 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
Shocker.Pro, ТАДА!!!))) А можно сказать где я дурак и почему вызов через command не работает? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2019, 22:59 |
|
Вывод данных из хранимой процедуры
|
|||
---|---|---|---|
#18+
za4tooo Код: vbnet 1. 2. 3. 4. 5. 6.
а что это вообще за веселая хрень? Во-первых, нафига ставить блокировки и динамический курсор. Во-вторых, я не знаю, что за синтаксис rst.Open command, может и рабочий, но команды по жизни вызывались через cmd.Execute ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2019, 23:08 |
|
|
start [/forum/topic.php?fid=61&msg=39838468&tid=2172028]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
32ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 155ms |
0 / 0 |