Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
план запроса хранимой процедуры
|
|||
|---|---|---|---|
|
#18+
Народ, можно ли в Sybase ASE посмотреть план запроса из хранимой процедуры, так чтобы не сама процедура не выполнялась. Я пробовал: Set showplan on Set noexec on - план запроса не выводится Если поставить Set noexec off, то план показывается, но при этом и процедура выполняется. Заранее благодарен за возможные варианты ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2007, 23:10 |
|
||
|
план запроса хранимой процедуры
|
|||
|---|---|---|---|
|
#18+
Kru пишет: > Народ, можно ли в Sybase ASE посмотреть план запроса из хранимой > процедуры, так чтобы не сама процедура не выполнялась. Нельзя. Можно только выдрать запрос из процедуры, подставив значения параметров и переменных, но тут надо делать это умеючи. Надо подставлять только именно значения параметров процедуры в запрос, переменные надо оставлять переменными, объявляя их с помощью declare в этом же батче. Иначе планы будут неэквивалентными. Хотя и в этом случае остается вероятность что они будут неэквивалентными все равно. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2007, 16:30 |
|
||
|
план запроса хранимой процедуры
|
|||
|---|---|---|---|
|
#18+
Я нашёл еще одно решение - в самой процедуре поставить set noexec on. В сессии вызывающей процедуру нужно поставить только set showplan on. Если после этого вызвать процедуру, то будет выведен только её план. Правда, это довольно сомнительный путь, т.к. требует пересоздания процедуры, но для отладки может быть и подойдёт. use pubs2 go create procedure dbo.ps_test_plan @au_id char(11) ,@aulname varchar(40) as set noexec on select * from authors where au_lname = @aulname or au_id = @au_id go вызывающая сессия: set showplan on execute ps_test_plan '267-41-2394', 'Straight' В результате возвращается только план запроса. У меня он получился одинаковым с планом для: select * from authors where au_lname = 'Straight' or au_id = '267-41-2394' Возможно, что в более сложных случаях планы могут и не совпадать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2007, 19:05 |
|
||
|
план запроса хранимой процедуры
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. показывает план вполне нормально ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2007, 03:52 |
|
||
|
план запроса хранимой процедуры
|
|||
|---|---|---|---|
|
#18+
добавил я это в FAQ http://www.sql.ru/faq/faq_topic.aspx?fid=921 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2007, 16:23 |
|
||
|
план запроса хранимой процедуры
|
|||
|---|---|---|---|
|
#18+
set fmtonly on - это то, что я искал. Всем большое спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2007, 16:51 |
|
||
|
план запроса хранимой процедуры
|
|||
|---|---|---|---|
|
#18+
sn1251 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. показывает план вполне нормально Да, это станdартная set опция, которая работaет и в sp, известна давно (по крайней мере с 11.9.2), была "недокументирована", стала "документирована" где-то с 12.5.х версий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2007, 22:12 |
|
||
|
|

start [/forum/topic.php?fid=55&msg=34786632&tid=2011937]: |
0ms |
get settings: |
6ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
39ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
29ms |
get tp. blocked users: |
1ms |
| others: | 213ms |
| total: | 315ms |

| 0 / 0 |
