Поделиться через


SQL Server, объект Deprecated Features

Область применения: SQL Server

Объект SQLServer:Deprecated Features в SQL Server предоставляет счетчик для отслеживания функций, назначенных как устаревшие. В каждом случае счетчик предоставляет количество использования, которое содержит количество случаев, когда обнаружена нерекомендуемая функция с момента последнего запуска SQL Server.

Значение этих счетчиков также можно получить, выполнив следующую инструкцию:

SELECT * FROM sys.dm_os_performance_counters   
WHERE object_name LIKE '%SQL%Deprecated Features%';  

В следующей таблице представлен объект производительности Deprecated Features SQL Server.

SQL Server, счетчик Deprecated Features Description
Использование Использование компонентов с момента последнего запуска SQL Server.

В следующей таблице представлены экземпляры счетчика SQL Server Deprecated Features.

Экземпляры счетчика SQL Server Deprecated Features Description
Символы «#» и «##» в качестве имен временных таблиц и хранимых процедур Обнаружен идентификатор, не содержащий других символов, кроме #. Используйте по крайней мере один дополнительный символ. Происходит один раз на каждую компиляцию.
синтаксис вызова функции «::» Синтаксис вызова функции :: был использован для функции с табличным значением. Замените на SELECT column_list FROM <function_name>(). Например, замените SELECT * FROM ::fn_virtualfilestats(2,1) на SELECT * FROM sys.fn_virtualfilestats(2,1). Происходит один раз на каждую компиляцию.
"@" и имена, начинающиеся с "@@", в качестве идентификаторов Transact-SQL Обнаружен идентификатор, начинающийся с символов @ и @@. Не используйте @или @v@ или имена, начинающиеся с @@ в качестве идентификаторов. Происходит один раз на каждую компиляцию.
ADDING TAPE DEVICE Обнаружена устаревшая функция sp_addumpdevice'**tape**'. Вместо этого используйте sp_addumpdevice'**disk**'. Происходит один раз на каждое выполнение.
Разрешение ALL. Число раз, когда был обнаружен синтаксис GRANT ALL, DENY ALL или REVOKE ALL. Измените синтаксис, чтобы запретить конкретные разрешения. Происходит один раз для каждого запроса.
ALTER DATABASE WITH TORN_PAGE_DETECTION Общее число использований устаревшего параметра TORN_PAGE_DETECTION инструкции ALTER DATABASE с момента последнего запуска экземпляра сервера. Вместо этого параметра используйте синтаксис PAGE_VERIFY. Происходит один раз для каждой инструкции DDL.
ALTER LOGIN WITH SET CREDENTIAL Обнаружен устаревший синтаксис функции ALTER LOGIN WITH SET CREDENTIAL или ALTER LOGIN WITH NO CREDENTIAL. Вместо него используйте синтаксис ADD или DROP CREDENTIAL. Происходит один раз на каждую компиляцию.
asymmetric_keys
asymmetric_keys.attested_by
Azeri_Cyrillic_90 Событие происходит один раз на каждый запуск базы данных и один раз на каждое применение этого параметра сортировки. Запланируйте изменение приложений, использующих этот параметр сортировки.
Azeri_Latin_90 Событие происходит один раз на каждый запуск базы данных и один раз на каждое применение этого параметра сортировки. Запланируйте изменение приложений, использующих этот параметр сортировки.
BACKUP DATABASE или LOG TO TAPE Нерекомендуемая функция BACKUP { DATABASE | LOG } TO TAPE или BACKUP { DATABASE | Обнаружена device_that_is_a_tape LOG } TO.

Использование BACKUP { DATABASE | LOG } TO DISK или BACKUP { DATABASE | LOG } TO device_that_is_a_disk вместо этого. Происходит один раз на каждое выполнение.
BACKUP DATABASE или LOG WITH MEDIAPASSWORD Обнаружена устаревшая функция BACKUP DATABASE WITH MEDIAPASSWORD или BACKUP LOG WITH MEDIAPASSWORD. Не используйте WITH MEDIAPASSWORD.
BACKUP DATABASE или LOG WITH PASSWORD Обнаружена устаревшая функция BACKUP DATABASE WITH PASSWORD или BACKUP LOG WITH PASSWORD. Не используйте WITH PASSWORD.
сертификатов
certificates.attested_by
Создание или изменение конечной точки SOAP Собственные XML-веб-службы устарели. Вместо этого следует использовать технологию WCF (Windows Communications Foundation) или ASP.NET.
COMPUTE [BY] Обнаружен синтаксис COMPUTE или COMPUTE BY. Перепишите запрос, чтобы использовать GROUP BY с ROLLUP. Происходит один раз на каждую компиляцию.
CREATE FULLTEXT CATALOG IN PATH Обнаружена инструкция CREATE FULLTEXT CATALOG с предложением IN PATH. Это предложение не действует в настоящей версии SQL Server. Происходит один раз на каждое выполнение.
CREATE TRIGGER WITH APPEND Обнаружена инструкция CREATE TRIGGER с предложением WITH APPEND. Создайте триггер повторно. Происходит один раз для каждой инструкции DDL.
CREATE_DROP_DEFAULT Обнаружен синтаксис CREATE DEFAULT or DROP DEFAULT. Перепишите команду, используя параметр DEFAULT инструкции CREATE TABLE или ALTER TABLE. Происходит один раз на каждую компиляцию.
CREATE_DROP_RULE Обнаружен синтаксис CREATE RULE. Перепишите команду, используя ограничения. Происходит один раз на каждую компиляцию.
Типы данных: text, ntext или image Обнаружены типы данных text, ntextили image . Перепишите приложения, чтобы использовался тип данных varchar(max) , и удалите типы данных text, ntextи image . Происходит один раз для каждого запроса.
Уровень совместимости базы данных 80, 90, 100, 110, 120, 130, 140 Общее число изменений уровня совместимости базы данных. Запланируйте обновление базы данных и приложения для следующего выпуска. Также происходит при запуске базы данных с нерекомендуемым уровнем совместимости.
DATABASE_MIRRORING Обнаружены ссылки на функцию зеркального отображения базы данных. Рассмотрите возможность перехода на использование групп доступности AlwaysOn либо, если ваш выпуск SQL Server не поддерживает группы доступности AlwaysOn, возможность перехода на использование доставки журналов.
database_principal_aliases Обнаружены ссылки на устаревшую процедуру sys.database_principal_aliases. Использование ролей вместо псевдонимов. Происходит один раз на каждую компиляцию.
DATABASEPROPERTY Инструкция ссылается на DATABASEPROPERTY. Обновите инструкцию DATABASEPROPERTY на DATABASEPROPERTYEX. Происходит один раз на каждую компиляцию.
DATABASEPROPERTYEX('IsFullTextEnabled') Инструкция ссылается на свойство DATABASEPROPERTYEX IsFullTextEnabled. Значение этого свойства не учитывается. Полнотекстовый поиск всегда включен для пользовательских баз данных. Не используйте данное свойство. Происходит один раз на каждую компиляцию.
DBCC [UN]PINTABLE Обнаружена инструкция DBCC PINTABLE или DBCC UNPINTABLE. Эта инструкция не действует и должна быть удалена. Происходит один раз для каждого запроса.
DBCC DBREINDEX Обнаружена инструкция DBCC DBREINDEX. Перепишите инструкцию, чтобы ALTER INDEX использовала параметр REBUILD. Происходит один раз для каждого запроса.
DBCC INDEXDEFRAG Обнаружена инструкция DBCC INDEXDEFRAG. Перепишите инструкцию, чтобы ALTER INDEX использовала параметр REORGANIZE. Происходит один раз для каждого запроса.
DBCC SHOWCONTIG Обнаружена инструкция DBCC SHOWCONTIG. Для получения этих сведений отправьте запрос к sys.dm_db_index_physical_stats. Происходит один раз для каждого запроса.
DBCC_EXTENTINFO
DBCC_IND
Ключевое слово DEFAULT в качестве значения по умолчанию. Обнаружен синтаксис, использующий ключевое слово DEFAULT в качестве значения по умолчанию. Не используйте. Происходит один раз на каждую компиляцию.
Устаревший параметр аттестации
Устаревший алгоритм шифрования Устаревший алгоритм шифрования rc4 в следующей версии SQL Server будет удален. Избегайте использования этой функции в новых разработках и запланируйте изменение приложений, которые сейчас ее используют. Алгоритм RC4 является слабым и поддерживается только в целях обратной совместимости. Когда база данных имеет уровень совместимости 90 или 100, новые материалы могут шифроваться только с помощью алгоритмов RC4 или RC4_128. (Не рекомендуется.) Используйте вместо этого более новые алгоритмы, например AES. В SQL Server 2012 (11.x) и более поздних материалах, зашифрованных с помощью RC4 или RC4_128, можно незашифровать на любом уровне совместимости.
Нерекомендуемый хэш-алгоритм Используйте алгоритмы MD2, MD4, MD5, SHA или SHA1.
Алгоритм DESX Обнаружена инструкция, использующая алгоритм шифрования DESX. Используйте другой алгоритм шифрования. Происходит один раз на каждую компиляцию.
dm_fts_active_catalogs Счетчик dm_fts_active_catalogs всегда имеет значение 0, поскольку некоторые столбцы в представлении sys.dm_fts_active_catalogs не устарели. Для отслеживания устаревшего столбца используется счетчик для конкретного столбца, например, sys.dm_fts_active_catalogs.is_paused.
dm_fts_active_catalogs.is_paused Обнаружен столбец is_paused динамического административного представления sys.dm_fts_active_catalogs . Избегайте использования этого столбца. Происходит каждый раз, когда экземпляр сервера обнаруживает ссылку на этот столбец.
dm_fts_active_catalogs.previous_status Обнаружен столбец previous_status динамического административного представления sys.dm_fts_active_catalogs. Избегайте использования этого столбца. Происходит каждый раз, когда экземпляр сервера обнаруживает ссылку на этот столбец.
dm_fts_active_catalogs.previous_status_description Обнаружен столбец previous_status_description динамического административного представления sys.dm_fts_active_catalogs. Избегайте использования этого столбца. Происходит каждый раз, когда экземпляр сервера обнаруживает ссылку на этот столбец.
dm_fts_active_catalogs.row_count_in_thousands Обнаружен столбец row_count_in_thousands динамического административного представления sys.dm_fts_active_catalogs. Избегайте использования этого столбца. Происходит каждый раз, когда экземпляр сервера обнаруживает ссылку на этот столбец.
dm_fts_active_catalogs.status Обнаружен столбец status динамического административного представления sys.dm_fts_active_catalogs. Избегайте использования этого столбца. Происходит каждый раз, когда экземпляр сервера обнаруживает ссылку на этот столбец.
dm_fts_active_catalogs.status_description Обнаружен столбец status_description динамического административного представления sys.dm_fts_active_catalogs. Избегайте использования этого столбца. Происходит каждый раз, когда экземпляр сервера обнаруживает ссылку на этот столбец.
dm_fts_active_catalogs.worker_count Обнаружен столбец worker_count динамического административного представления sys.dm_fts_active_catalogs. Избегайте использования этого столбца. Происходит каждый раз, когда экземпляр сервера обнаруживает ссылку на этот столбец.
dm_fts_memory_buffers Счетчик dm_fts_memory_buffers всегда имеет значение 0, поскольку большинство столбцов в представлении sys.dm_fts_memory_buffers не устарели. Для отслеживания нерекомендуемого столбца используйте зависящий от столбца счетчик dm_fts_memory_buffers.row_count.
dm_fts_memory_buffers.row_count Обнаружен столбец row_count динамического административного представления sys.dm_fts_memory_buffers. Избегайте использования этого столбца. Происходит каждый раз, когда экземпляр сервера обнаруживает ссылку на этот столбец.
DROP INDEX с двухкомпонентным именем Синтаксис DROP INDEX содержит синтаксис формата table_name.index_name в инструкции DROP INDEX. Замените синтаксис имя_индекса ON имя_таблицы в инструкции DROP INDEX. Происходит один раз на каждую компиляцию.
endpoint_webmethods Инструкция CREATE ENDPOINT или ALTER ENDPOINT с параметром FOR SOAP. Вместо этого следует использовать технологию WCF (Windows Communications Foundation) или ASP.NET.
EXT_CREATE_ALTER_SOAP_ENDPOINT Обнаружена инструкция CREATE или ALTER ENDPOINT с параметром FOR SOAP. Собственные XML-веб-службы устарели. Вместо этого следует использовать технологию WCF (Windows Communications Foundation) или ASP.NET.
EXT_endpoint_webmethods sys.endpoint_webmethods обнаружен. Собственные XML-веб-службы устарели. Вместо этого следует использовать технологию WCF (Windows Communications Foundation) или ASP.NET.
EXT_soap_endpoints sys.soap_endpoints обнаружен. Собственные XML-веб-службы устарели. Вместо этого следует использовать технологию WCF (Windows Communications Foundation) или ASP.NET.
EXTPROP_LEVEL0TYPE Обнаружено значение TYPE параметра level0type. Используйте SCHEMA как level0type и TYPE как level1type. Происходит один раз для каждого запроса.
EXTPROP_LEVEL0USER При level1type указано также level0type USER. Используйте USER только как level0type для расширенных свойств непосредственно в пользователе. Происходит один раз для каждого запроса.
FASTFIRSTROW Обнаружен синтаксис FASTFIRSTROW. Перепишите инструкции так, чтобы в них использовался синтаксис OPTION (FAST n). Происходит один раз на каждую компиляцию.
FILE_ID Обнаружен синтаксис FILE_ID. Перепишите инструкции для использования FILE_IDEX. Происходит один раз на каждую компиляцию.
fn_get_sql Функция fn_get_sql скомпилирована. Вместо этого используйте sys.dm_exec_sql_text. Происходит один раз на каждую компиляцию.
fn_servershareddrives Функция fn_servershareddrives скомпилирована. Вместо этого используйте sys.dm_io_cluster_shared_drives. Происходит один раз на каждую компиляцию.
fn_trace_geteventinfo Хранимые процедуры, функции и представления каталогов трассировки SQL устарели. Вместо этого используйте расширенные события.
fn_trace_getfilterinfo Хранимые процедуры, функции и представления каталогов трассировки SQL устарели. Вместо этого используйте расширенные события.
fn_trace_getinfo Хранимые процедуры, функции и представления каталогов трассировки SQL устарели. Вместо этого используйте расширенные события.
fn_trace_gettable Хранимые процедуры, функции и представления каталогов трассировки SQL устарели. Вместо этого используйте расширенные события.
fn_virtualservernodes Функция fn_virtualservernodes скомпилирована. Вместо этого используйте sys.dm_os_cluster_nodes. Происходит один раз на каждую компиляцию.
fulltext_catalogs Счетчик fulltext_catalogs всегда имеет значение 0, поскольку некоторые столбцы в представлении sys.fulltext_catalogs не устарели. Для отслеживания устаревшего столбца используйте счетчик, соответствующий столбцу, например, sys.fulltext_catalogs.data_space_id.. Происходит каждый раз, когда экземпляр сервера обнаруживает ссылку на этот столбец.
fulltext_catalogs.data_space_id Обнаружен столбец data_space_id представления каталога sys.fulltext_catalogs. Не используйте этот столбец. Происходит каждый раз, когда экземпляр сервера обнаруживает ссылку на этот столбец.
fulltext_catalogs.file_id Обнаружен столбец file_id представления каталога sys.fulltext_catalogs. Не используйте этот столбец. Происходит каждый раз, когда экземпляр сервера обнаруживает ссылку на этот столбец.
fulltext_catalogs.path Обнаружен столбец path представления каталога sys.fulltext_catalogs. Не используйте этот столбец. Происходит каждый раз, когда экземпляр сервера обнаруживает ссылку на этот столбец.
FULLTEXTCATALOGPROPERTY('LogSize') Обнаружено свойство LogSize функции FULLTEXTCATALOGPROPERTY. Избегайте использования этого свойства.
FULLTEXTCATALOGPROPERTY('PopulateStatus') Обнаружено свойство PopulateStatus функции FULLTEXTCATALOGPROPERTY. Избегайте использования этого свойства.
FULLTEXTSERVICEPROPERTY('ConnectTimeout') Обнаружено свойство ConnectTimeout функции FULLTEXTSERVICEPROPERTY. Избегайте использования этого свойства.
FULLTEXTSERVICEPROPERTY('DataTimeout') Обнаружено свойство DataTimeout функции FULLTEXTSERVICEPROPERTY. Избегайте использования этого свойства.
FULLTEXTSERVICEPROPERTY('ResourceUsage') Обнаружено свойство ResourceUsage функции FULLTEXTSERVICEPROPERTY. Избегайте использования этого свойства.
GROUP BY ALL Общее число использования синтаксиса GROUP BY ALL. Измените синтаксис для группирования по определенным таблицам.
Хинди Событие происходит один раз на каждый запуск базы данных и один раз на каждое применение этого параметра сортировки. Запланируйте изменение приложений, использующих этот параметр сортировки. Вместо него используется Indic_General_90.
Табличное указание HOLDLOCK без скобок Используйте HOLDLOCK со скобками. Перепишите инструкции для использования текущего синтаксиса.
IDENTITYCOL Обнаружен синтаксис INDENTITYCOL. Перепишите инструкции для использования синтаксиса $identity. Происходит один раз на каждую компиляцию.
IN PATH Обнаружена инструкция CREATE FULLTEXT CATALOG с предложением IN PATH. Это предложение не действует в настоящей версии SQL Server. Происходит один раз на каждое выполнение.
Список выбора индексированного представления без COUNT_BIG(\*) Список выбора статистического индексированного представления должен содержать функцию COUNT_BIG (\*).
INDEX_OPTION Обнаружен синтаксис CREATE TABLE, ALTER TABLE или CREATE INDEX с параметрами, не заключенными в скобки. Перепишите инструкции для использования текущего синтаксиса. Происходит один раз для каждого запроса.
INDEXKEY_PROPERTY Обнаружен синтаксис INDEXKEY_PROPERTY. Перепишите инструкции для запроса sys.index_columns. Происходит один раз на каждую компиляцию.
Косвенные подсказки возвращающих табличное значение функций. Косвенное приложение с помощью представления табличного указания вызову табличной функции (TVF) будет удалено в будущей версии SQL Server.
INSERT NULL в столбцах TIMESTAMP. В столбец TIMESTAMP вставлено значение NULL. Используйте значение по умолчанию. Происходит один раз на каждую компиляцию.
INSERT_HINTS
Korean_Wansung_Unicode Событие происходит один раз на каждый запуск базы данных и один раз на каждое применение этого параметра сортировки. Запланируйте изменение приложений, использующих этот параметр сортировки.
Lithuanian_Classic Событие происходит один раз на каждый запуск базы данных и один раз на каждое применение этого параметра сортировки. Запланируйте изменение приложений, использующих этот параметр сортировки.
Macedonian Событие происходит один раз на каждый запуск базы данных и один раз на каждое применение этого параметра сортировки. Запланируйте изменение приложений, использующих этот параметр сортировки. Используйте Macedonian_FYROM_90.
MODIFY FILEGROUP READONLY Обнаружен синтаксис MODIFY FILEGROUP READONLY. Перепишите инструкции для использования синтаксиса READ_ONLY. Происходит один раз на каждую компиляцию.
MODIFY FILEGROUP READWRITE Обнаружен синтаксис MODIFY FILEGROUP READWRITE. Перепишите инструкции для использования синтаксиса READ_WRITE. Происходит один раз на каждую компиляцию.
Имя столбца, состоящее более чем из двух компонентов Запрос использовал 3- или 4-компонентное имя в списке столбцов. Измените запрос для использования стандартных 2-компонентных имен. Происходит один раз на каждую компиляцию.
Несколько табличных указаний без запятых Между табличными указаниями в качестве разделителя использовался пробел. Вместо него используйте запятую. Происходит один раз на каждую компиляцию.
NOLOCK или READUNCOMMITTED в инструкции UPDATE или DELETE В предложении FROM инструкции UPDATE или DELETE обнаружены подсказки NOLOCK или READUNCOMMITTED. Удалите табличные указания NOLOCK и READUNCOMMITTED из предложения FROM.
Не-ANSI *= или =* внешние операторы соединения Обнаружен оператор, использующий синтаксис соединения *= или =* . Перепишите инструкции для использования синтаксиса соединения, совместимого с ANSI. Происходит один раз на каждую компиляцию.
Нумерованные хранимые процедуры Пронумерованные процедуры являются устаревшими. Использование нумерованных процедур не рекомендуется.
numbered_procedure_parameters Обнаружены ссылки на устаревшую процедуру sys.numbered_procedure_parameters. Не используйте. Происходит один раз на каждую компиляцию.
numbered_procedures Обнаружены ссылки на устаревшую процедуру sys.numbered_procedures. Не используйте. Происходит один раз на каждую компиляцию.
objidupdate
Устаревший формат RAISEERROR Обнаружен устаревший синтаксис RAISERROR (формат: RAISERROR integer string). Перепишите инструкции для использования текущего синтаксиса RAISERROR. Происходит один раз на каждую компиляцию.
Старый синтаксис NEAR Используйте новый синтаксис NEAR. См. раздел NEAR.
OLEDB для нерегламентированных соединений Поставщик SQLOLEDB не поддерживается. Используйте собственный клиент SQL Server для нерегламентированных подключений.
РАЗРЕШЕНИЯ Обнаружены ссылки на встроенную функцию PERMISSIONS. Вместо этого отправьте запрос к sys.fn_my_permissions. Происходит один раз для каждого запроса.
ProcNums Обнаружен устаревший синтаксис ProcNums. Перепишите инструкции, чтобы удалить эти ссылки. Происходит один раз на каждую компиляцию.
READTEXT Обнаружен синтаксис READTEXT. Перепишите приложения так, чтобы в них использовался тип данных varchar(max) , и удалите тип данных text . Происходит один раз для каждого запроса.
REMSERVER Замените удаленные серверы связанными серверами.
RESTORE DATABASE или LOG WITH DBO_ONLY Обнаружен синтаксис RESTORE ... WITH DBO_ONLY. Вместо этого используйте RESTORE ... RESTRICTED_USER.
RESTORE DATABASE или LOG WITH MEDIAPASSWORD Обнаружен синтаксис RESTORE ... WITH MEDIAPASSWORD. Параметр WITH MEDIAPASSWORD не обеспечивает должную безопасность, поэтому его следует удалить.
RESTORE DATABASE или LOG WITH PASSWORD Обнаружен синтаксис RESTORE ... WITH PASSWORD. Параметр WITH PASSWORD не обеспечивает должную безопасность, поэтому его следует удалить.
Возврат результатов из триггера Это событие происходит один раз на каждый вызов триггера. Перепишите триггер таким образом, чтобы он не возвращал результирующий набор.
ROWGUIDCOL Обнаружен синтаксис ROWGUIDCOL. Перепишите инструкции для использования синтаксиса $rowguid. Происходит один раз на каждую компиляцию.
SET ANSI_NULLS OFF Обнаружен синтаксис SET ANSI_NULLS OFF. Удалите этот устаревший синтаксис. Происходит один раз на каждую компиляцию.
SET ANSI_PADDING OFF Обнаружен синтаксис SET ANSI_PADDING OFF. Удалите этот устаревший синтаксис. Происходит один раз на каждую компиляцию.
SET CONCAT_NULL_YIELDS_NULL OFF Обнаружен синтаксис SET CONCAT_NULL_YIELDS_NULL OFF. Удалите этот устаревший синтаксис. Происходит один раз на каждую компиляцию.
SET DISABLE_DEF_CNST_CHK Обнаружен синтаксис SET DISABLE_DEF_CNST_CHK. Не действует. Удалите этот устаревший синтаксис. Происходит один раз на каждую компиляцию.
SET ERRLVL
SET FMTONLY ON Обнаружен синтаксис SET FMTONLY. Удалите этот устаревший синтаксис. Происходит один раз на каждую компиляцию.
SET OFFSETS Обнаружен синтаксис SET OFFSETS. Удалите этот устаревший синтаксис. Происходит один раз на каждую компиляцию.
SET REMOTE_PROC_TRANSACTIONS Обнаружен синтаксис SET REMOTE_PROC_TRANSACTIONS. Удалите этот устаревший синтаксис. Используйте вместо этого связанные серверы и sp_serveroption.
SET ROWCOUNT В инструкции DELETE, INSERT или UPDATE обнаружен синтаксис SET ROWCOUNT. Перепишите инструкцию, используя TOP. Происходит один раз на каждую компиляцию.
SETUSER Обнаружена инструкция SET USER. Вместо нее используйте инструкцию EXECUTE AS. Происходит один раз для каждого запроса.
soap_endpoints Собственные XML-веб-службы устарели. Вместо этого следует использовать технологию WCF (Windows Communications Foundation) или ASP.NET.
sp_addapprole, хранимая процедура Обнаружена процедура sp_addapprole. Вместо нее используйте инструкцию CREATE APPLICATION ROLE. Происходит один раз для каждого запроса.
sp_addextendedproc Обнаружена процедура sp_addextendedproc. Используйте вместо нее среду CLR. Происходит один раз на каждую компиляцию.
sp_addlogin Обнаружена процедура sp_addlogin. Используйте вместо нее инструкцию CREATE LOGIN. Происходит один раз для каждого запроса.
sp_addremotelogin Обнаружена процедура sp_addremotelogin. Вместо нее используйте связанные серверы.
хранимая процедура sp_addrole Обнаружена процедура sp_addrole. Вместо нее используйте инструкцию CREATE ROLE. Происходит один раз для каждого запроса.
sp_addrolemember Обнаружена процедура sp_addrolemember. Вместо этого используйте ALTER ROLE.
sp_addserver, хранимая процедура Обнаружена процедура sp_addserver. Вместо нее используйте связанные серверы.
sp_addsrvrolemember Обнаружена процедура sp_addsrvrolemember. Используйте вместо этого ALTER SERVER ROLE .
sp_addtype Обнаружена процедура sp_addtype. Вместо нее используйте инструкцию CREATE TYPE. Происходит один раз на каждую компиляцию.
sp_adduser Обнаружена процедура sp_adduser. Вместо нее используйте инструкцию CREATE USER. Происходит один раз для каждого запроса.
sp_approlepassword Обнаружена процедура sp_approlepassword. Вместо нее используйте инструкцию ALTER APPLICATION ROLE. Происходит один раз для каждого запроса.
sp_attach_db Обнаружена процедура sp_attach_db. Вместо нее используйте CREATE DATABASE FOR ATTACH. Происходит один раз для каждого запроса.
sp_attach_single_file_db Обнаружена процедура sp_single_file_db. Вместо нее используйте CREATE DATABASE FOR ATTACH_REBUILD_LOG. Происходит один раз для каждого запроса.
sp_bindefault Обнаружена процедура sp_bindefault. Вместо нее используйте ключевое слово DEFAULT инструкции ALTER TABLE или CREATE TABLE. Происходит один раз на каждую компиляцию.
sp_bindrule Обнаружена процедура sp_bindrule. Вместо нее используйте проверочные ограничения. Происходит один раз на каждую компиляцию.
sp_bindsession Обнаружена процедура sp_bindsession. Вместо нее используйте режим MARS или распределенные транзакции. Происходит один раз на каждую компиляцию.
sp_certify_removable Обнаружена процедура sp_certify_removable. Вместо этого используйте sp_detach_db. Происходит один раз для каждого запроса.
sp_changedbowner Обнаружена процедура sp_changedbowner. Вместо этого используйте ALTER AUTHORIZATION.
sp_changeobjectowner Обнаружена процедура sp_changeobjectowner. Вместо нее используйте ALTER SCHEMA или ALTER AUTHORIZATION. Происходит один раз для каждого запроса.
sp_change_users_login, хранимая процедура Обнаружена процедура sp_change_users_login. Вместо нее используйте инструкцию ALTER USER. Происходит один раз для каждого запроса.
sp_configure 'affinity mask' Обнаружен параметр affinity mask хранимой процедуры sp_configure. Используйте ALTER SERVER CONFIGURATION.
sp_configure 'affinity64 mask' Обнаружен параметр affinity mask хранимой процедуры sp_configure. Используйте ALTER SERVER CONFIGURATION.
sp_configure 'allow updates' Обнаружен параметр allow updates хранимой процедуры sp_configure. Системные таблицы теперь недоступны для обновления. Не используйте. Происходит один раз для каждого запроса.
sp_configure 'c2 audit mode' Стандарт безопасности С2 был заменен стандартом Common Criteria Certification. См. раздел Конфигурация сервера Common Criteria Compliance Enabled.
sp_configure 'default trace enabled' Хранимые процедуры, функции и представления каталогов трассировки SQL устарели. Вместо этого используйте расширенные события.
sp_configure 'disallow results from triggers' Обнаружен параметр disallow result sets from triggers хранимой процедуры sp_configure. Чтобы триггеры не возвращали результирующие наборы, используйте sp_configure, чтобы установить значение 1 для этого параметра. Происходит один раз для каждого запроса.
sp_configure 'ft crawl bandwidth (max)' Обнаружен параметр ft crawl bandwidth (max) хранимой процедуры sp_configure. Не используйте. Происходит один раз для каждого запроса.
sp_configure 'ft crawl bandwidth (min)' Обнаружен параметр ft crawl bandwidth (min) хранимой процедуры sp_configure. Не используйте. Происходит один раз для каждого запроса.
sp_configure 'ft notify bandwidth (max)' Обнаружен параметр ft notify bandwidth (max) хранимой процедуры sp_configure. Не используйте. Происходит один раз для каждого запроса.
sp_configure 'ft notify bandwidth (min)' Обнаружен параметр ft notify bandwidth (min) хранимой процедуры sp_configure. Не используйте. Происходит один раз для каждого запроса.
sp_configure 'locks' Обнаружен параметр locks хранимой процедуры sp_configure. Блокировки больше не настраиваются. Не используйте. Происходит один раз для каждого запроса.
sp_configure 'open objects' Обнаружен параметр open objects хранимой процедуры sp_configure. Количество открытых объектов больше не настраивается. Не используйте. Происходит один раз для каждого запроса.
sp_configure 'priority boost' Обнаружен параметр priority boost хранимой процедуры sp_configure. Не используйте. Происходит один раз для каждого запроса. Вместо этого используйте параметр командной строки Windows start /high ... program.exe.
sp_configure 'remote proc trans' Обнаружен параметр remote proc trans хранимой процедуры sp_configure. Не используйте. Происходит один раз для каждого запроса.
sp_configure 'set working set size' Обнаружен параметр set working set size хранимой процедуры sp_configure. Размер рабочего множества больше не настраивается. Не используйте. Происходит один раз для каждого запроса.
sp_control_dbmasterkey_password Хранимая процедура sp_control_dbmasterkey_password не проверяет наличие главного ключа. Это разрешено для обратной совместимости, но при этом отображается предупреждение. Такое поведение является устаревшим. В следующем выпуске главный ключ должен существовать, а пароль из хранимой процедуры sp_control_dbmasterkey_password должен совпадать с одним из паролей, которые используются для шифрования главного ключа базы данных.
sp_create_removable Обнаружена процедура sp_create_removable. Вместо этого используйте CREATE DATABASE. Происходит один раз для каждого запроса.
sp_db_increased_partitions Обнаружена процедура sp_db_increased_partitions. Теперь поддержка увеличенных секций доступна по умолчанию.
sp_db_selective_xml_index Начиная с SQL Server 2014 (версия 12.x) функциональность селективного XML-индекса не может быть отключена. В SQL Server 2012 (версия 11.x) для отключения функциональности селективного XML-индекса с помощью этой хранимой процедуры необходимо перевести базу данных в модель восстановления SIMPLE с помощью команды ALTER DATABASE SET.
sp_db_vardecimal_storage_format Обнаружено использование формата хранения vardecimal . Используйте вместо него сжатие данных.
sp_dbcmptlevel Обнаружена процедура sp_dbcmptlevel. Вместо этого используйте ALTER DATABASE ... SET COMPATIBILITY_LEVEL. Происходит один раз для каждого запроса.
sp_dbfixedrolepermission Обнаружена процедура sp_dbfixedrolepermission. Не используйте. Происходит один раз для каждого запроса.
sp_dboption Обнаружена процедура sp_dboption. Вместо этого следует использовать инструкции ALTER DATABASE и DATABASEPROPERTYEX. Происходит один раз на каждую компиляцию.
sp_dbremove Обнаружена процедура sp_dbremove. Вместо этого используйте инструкцию DROP DATABASE. Происходит один раз для каждого запроса.
sp_defaultdb Обнаружена процедура sp_defaultdb. Используйте вместо нее инструкцию ALTER LOGIN. Происходит один раз на каждую компиляцию.
sp_defaultlanguage Обнаружена процедура sp_defaultlanguage. Используйте вместо нее инструкцию ALTER LOGIN. Происходит один раз на каждую компиляцию.
sp_denylogin Обнаружена процедура sp_denylogin. Вместо нее используйте инструкцию ALTER LOGIN DISABLE. Происходит один раз для каждого запроса.
процедура sp_depends Обнаружена процедура sp_depends. Взамен используйте sys.dm_sql_referencing_entities и sys.dm_sql_referenced_entities. Происходит один раз для каждого запроса.
sp_detach_db @keepfulltextindexfile Аргумент @keepfulltextindexfile был обнаружен в инструкции sp_detach_db . Не используйте этот аргумент.
sp_dropalias Обнаружена процедура sp_dropalias. Псевдонимы заменены сочетанием учетных записей пользователей и ролями базы данных. Удалите псевдонимы в обновленных базах данных с помощью хранимой процедуры sp_dropalias. Происходит один раз на каждую компиляцию.
sp_dropapprole, хранимая процедура Обнаружена процедура sp_dropapprole. Вместо нее используйте инструкцию DROP APPLICATION ROLE. Происходит один раз для каждого запроса.
sp_dropextendedproc Обнаружена процедура sp_dropextendedproc. Используйте вместо нее среду CLR. Происходит один раз на каждую компиляцию.
sp_droplogin Обнаружена процедура sp_droplogin. Вместо этого следует использовать инструкцию DROP LOGIN. Происходит один раз для каждого запроса.
sp_dropremotelogin Обнаружена процедура sp_dropremotelogin. Вместо нее используйте связанные серверы.
sp_droprole Обнаружена процедура sp_droprole. Вместо нее используйте инструкцию DROP ROLE. Происходит один раз для каждого запроса.
sp_droprolemember, хранимая процедура Обнаружена процедура sp_droprolemember. Вместо этого используйте ALTER ROLE.
sp_dropsrvrolemember Обнаружена процедура sp_dropsrvrolemember. Используйте вместо этого ALTER SERVER ROLE .
хранимая процедура sp_droptype Обнаружена процедура sp_droptype. Вместо нее используйте инструкцию DROP TYPE.
sp_dropuser Обнаружена процедура sp_dropuser. Используйте вместо нее инструкцию DROP USER. Происходит один раз для каждого запроса.
sp_estimated_rowsize_reduction_for_vardecimal Обнаружено использование формата хранения vardecimal . Используйте вместо него сжатие данных и sp_estimate_data_compression_savings.
sp_fulltext_catalog Обнаружена процедура sp_fulltext_catalog. Вместо нее используйте инструкцию CREATE/ALTER/DROP FULLTEXT CATALOG. Происходит один раз на каждую компиляцию.
sp_fulltext_column Обнаружена процедура sp_fulltext_column. Используйте вместо нее инструкцию ALTER FULLTEXT INDEX. Происходит один раз на каждую компиляцию.
sp_fulltext_database, хранимая процедура Обнаружена процедура sp_fulltext_database. Используйте вместо нее инструкцию ALTER DATABASE. Происходит один раз на каждую компиляцию.
sp_fulltext_service @action=clean_up Обнаружен параметр clean_up хранимой процедуры sp_fulltext_service. Происходит один раз для каждого запроса.
sp_fulltext_service @action=connect_timeout Обнаружен параметр connect_timeout хранимой процедуры sp_fulltext_service. Происходит один раз для каждого запроса.
sp_fulltext_service @action=data_timeout Обнаружен параметр data_timeout хранимой процедуры sp_fulltext_service. Происходит один раз для каждого запроса.
sp_fulltext_service @action=resource_usage Обнаружен параметр resource_usage хранимой процедуры sp_fulltext_service. Этот параметр не действует. Происходит один раз для каждого запроса.
sp_fulltext_table Обнаружена процедура sp_fulltext_table. Вместо нее используйте инструкцию CREATE/ALTER/DROP FULLTEXT INDEX. Происходит один раз на каждую компиляцию.
sp_getbindtoken Обнаружена процедура sp_getbindtoken. Вместо нее используйте режим MARS или распределенные транзакции. Происходит один раз на каждую компиляцию.
sp_grantdbaccess Обнаружена процедура sp_grantdbaccess. Вместо нее используйте инструкцию CREATE USER. Происходит один раз для каждого запроса.
sp_grantlogin Обнаружена процедура sp_grantlogin. Используйте вместо нее инструкцию CREATE LOGIN. Происходит один раз для каждого запроса.
sp_help_fulltext_catalog_components Обнаружена процедура sp_help_fulltext_catalog_components. Эта процедура возвращает пустые строки. Не используйте эту процедуру. Происходит один раз на каждую компиляцию.
sp_help_fulltext_catalogs Обнаружена процедура sp_help_fulltext_catalogs. Вместо этого отправьте запрос к sys.fulltext_catalogs. Происходит один раз на каждую компиляцию.
sp_help_fulltext_catalogs_cursor Обнаружена процедура sp_help_fulltext_catalogs_cursor. Вместо этого отправьте запрос к sys.fulltext_catalogs. Происходит один раз на каждую компиляцию.
sp_help_fulltext_columns Обнаружена процедура sp_help_fulltext_columns. Вместо этого отправьте запрос к sys.fulltext_index_columns. Происходит один раз на каждую компиляцию.
sp_help_fulltext_columns_cursor Обнаружена процедура sp_help_fulltext_columns_cursor. Вместо этого отправьте запрос к sys.fulltext_index_columns. Происходит один раз на каждую компиляцию.
sp_help_fulltext_tables Обнаружена процедура sp_help_fulltext_tables. Вместо этого отправьте запрос к sys.fulltext_indexes. Происходит один раз на каждую компиляцию.
sp_help_fulltext_tables_cursor Обнаружена процедура sp_help_fulltext_tables_cursor. Вместо этого отправьте запрос к sys.fulltext_indexes. Происходит один раз на каждую компиляцию.
sp_helpdevice Обнаружена процедура sp_helpdevice. Вместо этого отправьте запрос к sys.backup_devices. Происходит один раз для каждого запроса.
sp_helpextendedproc Обнаружена процедура sp_helpextendedproc. Используйте вместо нее среду CLR. Происходит один раз на каждую компиляцию.
sp_helpremotelogin Обнаружена процедура sp_helpremotelogin. Вместо нее используйте связанные серверы.
sp_indexoption Обнаружена процедура sp_indexoption. Используйте вместо нее инструкцию ALTER INDEX. Происходит один раз на каждую компиляцию.
sp_lock Обнаружена процедура sp_lock. Вместо этого отправьте запрос к sys.dm_tran_locks. Происходит один раз для каждого запроса.
sp_password Обнаружена процедура sp_password. Используйте вместо нее инструкцию ALTER LOGIN. Происходит один раз для каждого запроса.
хранимая процедура sp_remoteoption Обнаружена процедура sp_remoteoption. Вместо нее используйте связанные серверы.
sp_renamedb Обнаружена процедура sp_renamedb. Используйте вместо нее инструкцию ALTER DATABASE. Происходит один раз для каждого запроса.
sp_resetstatus Обнаружена процедура sp_resetstatus. Используйте вместо нее инструкцию ALTER DATABASE. Происходит один раз для каждого запроса.
sp_revokedbaccess Обнаружена процедура sp_revokedbaccess. Используйте вместо нее инструкцию DROP USER. Происходит один раз для каждого запроса.
sp_revokelogin Обнаружена процедура sp_revokelogin. Вместо этого следует использовать инструкцию DROP LOGIN. Происходит один раз для каждого запроса.
sp_srvrolepermission Обнаружена устаревшая хранимая процедура sp_srvrolepermission. Не используйте. Происходит один раз для каждого запроса.
хранимая процедура sp_trace_create Хранимые процедуры, функции и представления каталогов трассировки SQL устарели. Вместо этого используйте расширенные события.
sp_trace_getdata Хранимые процедуры, функции и представления каталогов трассировки SQL устарели. Вместо этого используйте расширенные события.
sp_trace_setevent, хранимая процедура Хранимые процедуры, функции и представления каталогов трассировки SQL устарели. Вместо этого используйте расширенные события.
sp_trace_setfilter, хранимая процедура Хранимые процедуры, функции и представления каталогов трассировки SQL устарели. Вместо этого используйте расширенные события.
sp_trace_setstatus Хранимые процедуры, функции и представления каталогов трассировки SQL устарели. Вместо этого используйте расширенные события.
хранимая процедура sp_unbindefault Обнаружена процедура sp_unbindefault. Вместо нее используйте ключевое слово DEFAULT инструкции ALTER TABLE или CREATE TABLE. Происходит один раз на каждую компиляцию.
sp_unbindrule Обнаружена процедура sp_unbindrule. Используйте проверочные ограничения вместо правил. Происходит один раз на каждую компиляцию.
SQL_AltDiction_CP1253_CS_AS Событие происходит один раз на каждый запуск базы данных и один раз на каждое применение этого параметра сортировки. Запланируйте изменение приложений, использующих этот параметр сортировки.
sql_dependencies Обнаружены ссылки на sys.sql_dependencies. Вместо этого используйте sys.sql_expression_dependencies. Происходит один раз на каждую компиляцию.
Строковые литералы в качестве псевдонимов столбцов Обнаружен синтаксис, содержащий строку, которая используется в качестве псевдонима столбца в инструкции SELECT, например 'string' = expression. Не используйте. Происходит один раз на каждую компиляцию.
sysaltfiles Обнаружены ссылки на sysaltfiles. Вместо этого используйте sys.master_files. Происходит один раз на каждую компиляцию.
syscacheobjects Обнаружены ссылки на syscacheobjects. Используйте вместо них типы данных sys.dm_exec_cached_plans, sys.dm_exec_plan_attributes и sys.dm_exec_sql_text. Происходит один раз на каждую компиляцию.
syscolumns Обнаружены ссылки на syscolumns. Вместо этого используйте sys.columns. Происходит один раз на каждую компиляцию.
syscomments Обнаружены ссылки на syscomments. Вместо этого используйте sys.sql_modules. Происходит один раз на каждую компиляцию.
sysconfigures Обнаружены ссылки на таблицу sysconfigures. Используйте вместо этого ссылки на представление sys.sysconfigures. Происходит один раз на каждую компиляцию.
sysconstraints Обнаружены ссылки на sysconstraints. Используйте вместо этого sys.check_constraints, sys.default_constraints, sys.key_constraints, sys.foreign_keys. Происходит один раз на каждую компиляцию.
syscurconfigs Обнаружены ссылки на syscurconfigs. Вместо этого используйте sys.configurations. Происходит один раз на каждую компиляцию.
sysdatabases Обнаружены ссылки на sysdatabases. Вместо этого используйте sys.databases. Происходит один раз на каждую компиляцию.
sysdepends Обнаружены ссылки на sysdepends. Вместо этого используйте sys.sql_dependencies. Происходит один раз на каждую компиляцию.
sysdevices Обнаружены ссылки на sysdevices. Вместо этого используйте sys.backup_devices. Происходит один раз на каждую компиляцию.
sysfilegroups Обнаружены ссылки на sysfilegroups. Вместо этого используйте sys.filegroups. Происходит один раз на каждую компиляцию.
sysfiles Обнаружены ссылки на sysfiles. Вместо этого используйте sys.database_files. Происходит один раз на каждую компиляцию.
sysforeignkeys Обнаружены ссылки на sysforeignkeys. Вместо этого используйте sys.foreign_keys. Происходит один раз на каждую компиляцию.
sysfulltextcatalogs Обнаружены ссылки на sysfulltextcatalogs. Вместо этого используйте sys.fulltext_catalogs. Происходит один раз на каждую компиляцию.
sysindexes Обнаружены ссылки на sysindexes. Используйте вместо этого sys.indexes, sys.partitions, sys.allocation_units и sys.dm_db_partition_stats. Происходит один раз на каждую компиляцию.
sysindexkeys Обнаружены ссылки на sysindexkeys. Вместо этого используйте sys.index_columns. Происходит один раз на каждую компиляцию.
syslockinfo Обнаружены ссылки на syslockinfo. Вместо этого используйте sys.dm_tran_locks. Происходит один раз на каждую компиляцию.
syslogins Обнаружены ссылки на syslogins. Взамен используйте sys.server_principals и sys.sql_logins. Происходит один раз на каждую компиляцию.
sysmembers Обнаружены ссылки на sysmembers. Вместо этого используйте sys.database_role_members. Происходит один раз на каждую компиляцию.
sysmessages Обнаружены ссылки на sysmessages. Вместо этого используйте sys.messages. Происходит один раз на каждую компиляцию.
sysobjects Обнаружены ссылки на sysobjects. Вместо этого используйте sys.objects. Происходит один раз на каждую компиляцию.
sysoledbusers Обнаружены ссылки на sysoledbusers. Вместо этого используйте sys.linked_logins. Происходит один раз на каждую компиляцию.
sysopentapes Обнаружены ссылки на sysopentapes. Вместо этого используйте sys.dm_io_backup_tapes. Происходит один раз на каждую компиляцию.
sysperfinfo Обнаружены ссылки на sysperfinfo. Используйте sys.dm_os_performance_counters. вместо. Происходит один раз на каждую компиляцию.
syspermissions Обнаружены ссылки на syspermissions. Взамен используйте sys.database_permissions и sys.server_permissions. Происходит один раз на каждую компиляцию.
sysprocesses Обнаружены ссылки на sysprocesses. Используйте вместо них типы данных sys.dm_exec_connections, sys.dm_exec_sessions и sys.dm_exec_requests. Происходит один раз на каждую компиляцию.
sysprotects Обнаружены ссылки на sysprotects. Взамен используйте sys.database_permissions и sys.server_permissions. Происходит один раз на каждую компиляцию.
sysreferences Обнаружены ссылки на sysreferences. Вместо этого используйте sys.foreign_keys. Происходит один раз на каждую компиляцию.
sysremotelogins Обнаружены ссылки на sysremotelogins. Вместо этого используйте sys.remote_logins. Происходит один раз на каждую компиляцию.
sysservers Обнаружены ссылки на sysservers. Вместо этого используйте sys.servers. Происходит один раз на каждую компиляцию.
systypes Обнаружены ссылки на systypes. Вместо этого используйте sys.types. Происходит один раз на каждую компиляцию.
sysusers Обнаружены ссылки на sysusers. Вместо этого используйте sys.database_principals. Происходит один раз на каждую компиляцию.
Табличное указание без ключевого слова WITH Обнаружена инструкция, использующая табличное указание без ключевого слова WITH. Измените инструкции так, чтобы они содержали ключевое слово WITH. Происходит один раз на каждую компиляцию.
Параметр таблицы «text in row» Обнаружены ссылки на параметр таблицы «text in row». Вместо этого используйте sp_tableoption 'large value types out of row'. Происходит один раз для каждого запроса.
TEXTPTR Обнаружены ссылки на функцию TEXTPTR. Перепишите приложения, чтобы использовался тип данных varchar(max) , и удалите типы данных text, ntextи image . Происходит один раз для каждого запроса.
TEXTVALID Обнаружены ссылки на функцию TEXTVALID. Перепишите приложения, чтобы использовался тип данных varchar(max) , и удалите типы данных text, ntextи image . Происходит один раз для каждого запроса.
TIMESTAMP Общее число вхождений нерекомендуемого типа данных timestamp , обнаруженных в инструкции DDL. Используйте вместо него тип данных rowversion .
UPDATETEXT или WRITETEXT Обнаружена инструкция UPDATETEXT или WRITETEXT. Перепишите приложения, чтобы использовался тип данных varchar(max) , и удалите типы данных text, ntextи image . Происходит один раз для каждого запроса.
USER_ID Обнаружены ссылки на функцию USER_ID. Вместо этого используйте функцию DATABASE_PRINCIPAL_ID. Происходит один раз на каждую компиляцию.
Использование OLEDB для связанных серверов Обнаружено указание поставщика SQLOLEDB для связанных серверов. Вместо этого используйте MSOLEDBSQL.
Формат хранения vardecimal Обнаружено использование формата хранения vardecimal . Используйте вместо него сжатие данных.
XMLDATA Обнаружен синтаксис FOR XML. Используйте создание схем XSD для режимов RAW и AUTO. Для явного режима нет замены. Происходит один раз на каждую компиляцию.
XP_API Обнаружена инструкция расширенной хранимой процедуры. Не используйте.
xp_grantlogin Обнаружена процедура xp_grantlogin. Используйте вместо нее инструкцию CREATE LOGIN. Происходит один раз на каждую компиляцию.
xp_loginconfig Обнаружена процедура xp_loginconfig. Вместо нее используйте аргумент IsIntegratedSecurityOnly функции SERVERPROPERTY. Происходит один раз для каждого запроса.
xp_revokelogin Обнаружена процедура xp_revokelogin. Вместо нее используйте инструкцию ALTER LOGIN DISABLE DROP LOGIN. Происходит один раз на каждую компиляцию.