Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
sp_executesql vs SELECT in SP
|
|||
|---|---|---|---|
|
#18+
Пипл! В BOL сказано Transact-SQL Tips ... In a Transact-SQL script, stored procedure, or trigger, use sp_executesql to execute the SELECT statement DECLARE @IntVariable INT DECLARE @SQLString NVARCHAR(500) DECLARE @ParmDefinition NVARCHAR(500) /* Build the SQL string. */ SET @SQLString = N'SELECT * FROM Northwind.dbo.Shippers WHERE ShipperID = @ShipID' /* Specify the parameter format once. */ SET @ParmDefinition = N'@ShipID int' /* Execute the string. */ SET @IntVariable = 3 EXECUTE sp_executesql @SQLString, @ParmDefinition, @ShipID = @IntVariable ... Правильно ли я понимаю, что процедура вида CREATE PROC test1 @UserID int AS SELECT Username, Password FROM Users WHERE UserID = @UserID будет хужее с точки зрения скорости выполнения, нежели ее эквивалент с использованием sp_executesql: CREATE PROC test2 @UserID int AS declare @sql NVARCHAR(500) SET @sql = N'SELECT Username, Password FROM Users WHERE UserID = @UserID' EXECUTE sp_executesql @sql, N'@UserID int', @UserID ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2002, 13:42 |
|
||
|
sp_executesql vs SELECT in SP
|
|||
|---|---|---|---|
|
#18+
То, что вы цитируете относиться к повышению вероятности повторного использования плана выполнения запроса("SQL Server 2000 has a better chance of reusing execution plans ..."). Повторное использование плана выполнения запроса конечно повышает производительность, но не надо воспринимать это как утверждение того, что все запросы, заданные явно, выполняются медленнее, чем запросы с помощью sp_executesql. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2002, 14:09 |
|
||
|
sp_executesql vs SELECT in SP
|
|||
|---|---|---|---|
|
#18+
То есть, резюмируя, необходимо создавать по две версии процедур и опытным путем выбирать наилучшую? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2002, 14:25 |
|
||
|
sp_executesql vs SELECT in SP
|
|||
|---|---|---|---|
|
#18+
надо писать так чтобы было нагляднее, а если будет тормозить - тогда уже разбираться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2002, 14:52 |
|
||
|
sp_executesql vs SELECT in SP
|
|||
|---|---|---|---|
|
#18+
необходимо создавать по две версии процедур и опытным путем выбирать наилучшую? А также по несколько вариантов индексов и статистик для каждой таблицы, используемой в запросах. Можно попробовать изменить(читай - увеличить) количество оперативной памяти, "поиграться" с размещением файлов данных, журналов и собственно операционной системы на разных физических и логических дисках, с разными вариантами RAID(как на программном так и на аппаратном уровнях). Другими словами производительность - понятие комплексное и персональное для конкретной системы и использованием только одной опции (sp_executesql vs SP) не достигается. ЗЫ Кроме того использование динамических запросов влияет на права доступа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2002, 15:22 |
|
||
|
|

start [/forum/topic.php?fid=46&fpage=3505&tid=1823939]: |
0ms |
get settings: |
5ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
36ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 224ms |
| total: | 327ms |

| 0 / 0 |
