|
Использование sqlsrv с хранимыми процедурами
|
|||
---|---|---|---|
#18+
Здравствуйте. Есть хранимая процедура. Да любая может быть хранимка в ней идёт сначала вставка в таблицу записи и далее select в ней. При выполнении процедуры: Код: php 1. 2. 3. 4. 5. 6.
Вставка записи происходит, а строчку $l1 = $row['ErrorMessage']; не попадает (по отладчику смотрю). Что можно сделать, всё же туда попадал? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2018, 07:56 |
|
Использование sqlsrv с хранимыми процедурами
|
|||
---|---|---|---|
#18+
попробуйте какой-нибудь sqlsrv_query вместо sqlsrv_execute ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2018, 08:26 |
|
Использование sqlsrv с хранимыми процедурами
|
|||
---|---|---|---|
#18+
Здравствуйте. sqlsrv_query тоже не даёт это сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 06:23 |
|
Использование sqlsrv с хранимыми процедурами
|
|||
---|---|---|---|
#18+
roma1975, у меня тоже всё на хранимках Попробуйте вывести на экран количество возвращаемых строк, текст ошибок и т.д. Код: php 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 11:35 |
|
Использование sqlsrv с хранимыми процедурами
|
|||
---|---|---|---|
#18+
Так в том то и дело, что ошибок нет, а в твою строку print_r($row); не попадает программа (смотрю по отладчику). Ты можешь тоже попробовать сделать любую хранимую процедуру, и в неё insert в таблицу и select любой и посмотреть. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 13:49 |
|
Использование sqlsrv с хранимыми процедурами
|
|||
---|---|---|---|
#18+
roma1975, пробовал, работает Там возвращается 2 датасета. Перейдите к тому, что возвращает select, через sqlsrv_next_result , типа такого Код: php 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 14:00 |
|
Использование sqlsrv с хранимыми процедурами
|
|||
---|---|---|---|
#18+
Здравствуйте. Да не получается. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8.
хранимка: Код: 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. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52.
таблица: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
запуск из managment studio: Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 07:31 |
|
Использование sqlsrv с хранимыми процедурами
|
|||
---|---|---|---|
#18+
roma1975, чтобы заработало, поставьте в начало хранимки set nocount on ; http://www.sql.ru/faq/faq_topic.aspx?fid=111 Также рекомендую убрать ненужную транзакцию на вставку. Если insert не пройдет, то сервер сам откатит, и заодно выведет сообщение об ошибке, и в Вашем случае begin try и этот блок Код: sql 1. 2. 3.
тоже по сути лишнее. Ошибки на экран выводятся из PHP функцией formatErrors . Ниже работающий код, в котором я всё-таки оставил try...catch SQL Код: 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. 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.
PHP Код: php 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 11:01 |
|
|
start [/forum/topic.php?fid=23&msg=39714312&tid=1460149]: |
0ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
83ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
others: | 303ms |
total: | 476ms |
0 / 0 |