Устаревшие функции компонента Database Engine в SQL Server 2008
В этом разделе описаны устаревшие функции компонента SQL Server Database Engine, по-прежнему доступные в SQL Server 2008. Их удаление запланировано в следующей версии SQL Server. Устаревшие функции не должны использоваться в новых приложениях.
Наблюдать за использованием устаревших функций можно с помощью объекта производительности и событий трассировки Deprecated Features, доступных в SQL Server. Дополнительные сведения см. в разделе Использование объектов SQL Server.
Функции, не поддерживаемые в следующей версии SQL Server
Приведенные ниже функции компонента SQL Server Database Engine не будут поддерживаться в следующей версии SQL Server. Не используйте их при работе над новыми приложениями и как можно быстрее измените приложения, в которых они в настоящее время используются. Название компонента отображается в событиях трассировки в столбце ObjectName, а в счетчиках производительности и sys.dm_os_performance_counters — как имя экземпляра. Идентификатор компонента отображается в событиях трассировки как ObjectId.
Категория |
Устаревшая функция |
Замена |
Имя функции |
Идентификатор функции |
---|---|---|---|---|
Резервное копирование и восстановление |
BACKUP { DATABASE | LOG } WITH PASSWORD |
Нет |
BACKUP DATABASE или LOG WITH PASSWORD |
104 |
Резервное копирование и восстановление |
BACKUP { DATABASE | LOG } WITH MEDIAPASSWORD |
Нет |
BACKUP DATABASE или LOG WITH MEDIAPASSWORD |
103 |
Резервное копирование и восстановление |
RESTORE { DATABASE | LOG } … WITH DBO_ONLY |
RESTORE { DATABASE | LOG } … … WITH RESTRICTED_USER |
RESTORE DATABASE или LOG WITH DBO_ONLY |
101 |
Резервное копирование и восстановление |
RESTORE { DATABASE | LOG } WITH PASSWORD |
Нет |
RESTORE DATABASE или LOG WITH PASSWORD |
106 |
Резервное копирование и восстановление |
RESTORE { DATABASE | LOG } WITH MEDIAPASSWORD |
Нет |
RESTORE DATABASE или LOG WITH MEDIAPASSWORD |
105 |
Уровни совместимости |
Уровень совместимости 80 и обновление с версии 80. |
Уровни совместимости доступны только в двух последних версиях. Дополнительные сведения об уровнях совместимости см. в разделе Уровень совместимости инструкции ALTER DATABASE (Transact-SQL). |
Уровень совместимости базы данных 80. |
107 |
Метаданные |
DATABASEPROPERTY |
DATABASEPROPERTYEX |
DATABASEPROPERTY |
38 |
Объекты базы данных |
Предложение WITH APPEND в триггерах. |
Создайте заново весь триггер. |
CREATE TRIGGER WITH APPEND |
171 |
Параметры экземпляра |
Значение по умолчанию параметра disallow results from triggers = 0. |
Значение по умолчанию параметра disallow results from triggers = 1. |
sp_configure 'disallow results from triggers' |
172 |
Параметры базы данных |
sp_dboption |
ALTER DATABASE |
sp_dboption |
77 |
Подсказки в запросах |
Подсказка FASTFIRSTROW |
OPTION (FAST n) |
FASTFIRSTROW |
177 |
Удаленные серверы |
sp_addremotelogin sp_addserver sp_dropremotelogin sp_helpremotelogin sp_remoteoption |
Замените удаленные серверы связанными серверами. |
sp_addremotelogin sp_addserver sp_dropremotelogin sp_helpremotelogin sp_remoteoption |
70 69 71 72 73 |
Удаленные серверы |
@@remserver |
Замените удаленные серверы связанными серверами. |
Нет |
Нет |
Удаленные серверы |
SET REMOTE_PROC_TRANSACTIONS |
Замените удаленные серверы связанными серверами. |
SET REMOTE_PROC_TRANSACTIONS |
110 |
Безопасность |
sp_dropalias |
Псевдонимы заменены сочетанием учетных записей пользователей и ролями базы данных. Удалите псевдонимы в обновленных базах данных с помощью хранимой процедуры sp_dropalias. |
sp_dropalias |
68 |
Параметры SET |
SET DISABLE_DEF_CNST_CHK |
Нет. Параметр не делает ничего. |
SET DISABLE_DEF_CNST_CHK |
188 |
Параметры SET |
Параметр SET ROWCOUNT для инструкций INSERT, UPDATE и DELETE. |
Ключевое слово TOP. |
SET ROWCOUNT |
109 |
Синтаксис Transact-SQL |
Использование операторов *= и =*. |
Использование синтаксиса соединения ANSI. Дополнительные сведения см. в разделе Предложение FROM (Transact-SQL). |
Операторы внешнего соединения *= или =*, отсутствующие в стандарте ANSI. |
178 |
Синтаксис Transact-SQL |
COMPUTE/COMPUTE BY |
Использование ROLLUP |
COMPUTE [BY] |
180 |
Системные таблицы |
sys.database_principal_aliases |
Использование ролей вместо псевдонимов. |
database_principal_aliases |
150 |
Инструменты |
Программа sqlmaint |
Использование функции планов обслуживания SQL Server. |
Нет |
Нет |
Transact-SQL |
Синтаксис инструкции RAISERROR (формат: RAISERROR integer string) устарел. |
Перепишите инструкцию с использованием текущего синтаксиса RAISERROR. |
Устаревшая инструкция RAISEERROR. |
164 |
Функции, не поддерживаемые в будущей версии SQL Server
Поддержка приведенных ниже функций компонента SQL Server Database Engine в следующей версии SQL Server будет сохранена, однако будет удалена в более поздней версии (с какой именно версии SQL Server, пока не определено).
Категория |
Устаревшая функция |
Замена |
Имя функции |
Идентификатор функции |
---|---|---|---|---|
Уровни совместимости |
sp_dbcmptlevel |
ALTER DATABASE … SET COMPATIBILITY_LEVEL. Дополнительные сведения см. в разделе Уровень совместимости инструкции ALTER DATABASE (Transact-SQL). |
sp_dbcmptlevel |
80 |
Уровни совместимости |
Уровень совместимости базы данных 90. |
Запланируйте обновление базы данных и приложения для следующей версии. |
Уровень совместимости базы данных 90. |
108 |
XML |
Создание встроенных схем XDR. |
Директива XMLDATA для параметра XML FOR является устаревшей. В режимах RAW и AUTO используйте создание XSD-схем. В режиме EXPLICT для директивы XMLDATA замены нет. |
XMLDATA |
181 |
Резервное копирование и восстановление |
BACKUP { DATABASE | LOG } TO TAPE BACKUP { DATABASE | LOG } TO device_that_is_a_tape |
BACKUP { DATABASE | LOG } TO DISK BACKUP { DATABASE | LOG } TO device_that_is_a_disk |
BACKUP DATABASE или LOG TO TAPE |
235 |
Резервное копирование и восстановление |
sp_addumpdevice'tape' |
sp_addumpdevice'disk' |
ADDING TAPE DEVICE |
236 |
Резервное копирование и восстановление |
sp_helpdevice |
sys.backup_devices |
sp_helpdevice |
100 |
Параметры сортировки |
Korean_Wansung_Unicode Lithuanian_Classic SQL_AltDiction_CP1253_CS_AS |
Нет. Эти параметры сортировки существуют в SQL Server 2005, но их нельзя увидеть с помощью функции fn_helpcollations. |
Korean_Wansung_Unicode Lithuanian_Classic SQL_AltDiction_CP1253_CS_AS |
191 192 194 |
Параметры сортировки |
Hindi Macedonian |
Эти параметры сортировки существуют в SQL Server 2005 и более поздних версий, но их нельзя увидеть с помощью функции fn_helpcollations. Вместо них следует использовать Macedonian_FYROM_90 и Indic_General_90. |
Hindi Macedonian |
190 193 |
Параметры сортировки |
Azeri_Latin_90 Azeri_Cyrilllic_90 |
Azeri_Latin_100 Azeri_Cyrilllic_100 |
Azeri_Latin_90 Azeri_Cyrilllic_90 |
232 233 |
Настройка |
Параметр базы данных SET ANSI_NULLS OFF и ANSI_NULLS OFF. Параметр базы данных SET ANSI_PADDING OFF и ANSI_PADDING OFF. Параметр базы данных SET CONCAT_NULL_YIELDS_NULL OFF и CONCAT_NULL_YIELDS_NULL OFF. SET OFFSETS. |
Нет Параметры ANSI_NULLS, ANSI_PADDING и CONCAT_NULLS_YIELDS_NULL всегда будут иметь значение ON. Параметр SET OFFSETS будет недоступен. |
SET ANSI_NULLS OFF SET ANSI_PADDING OFF SET CONCAT_NULL_YIELDS_NULL OFF SET OFFSETS ALTER DATABASE SET ANSI_NULLS OFF ALTER DATABASE SET ANSI_PADDING OFF ALTER DATABASE SET CONCAT_NULL_YIELDS_NULL OFF |
Параметры SET |
Типы данных |
sp_addtype sp_droptype |
CREATE TYPE DROP TYPE |
sp_addtype sp_droptype |
62 63 |
Типы данных |
Синтаксис timestamp для типа данных rowversion. |
Синтаксис типа данных rowversion. |
TIMESTAMP |
158 |
Типы данных |
Возможность вставлять значения NULL в столбцы типа timestamp. |
Используйте вместо этого DEFAULT. |
INSERT NULL в столбцах TIMESTAMP |
179 |
Типы данных |
Параметр таблицы 'text in row' |
Используйте типы данных varchar(max), nvarchar(max) и varbinary(max). Дополнительные сведения см. в разделе sp_tableoption (Transact-SQL). |
Параметр таблицы «text in row». |
9 |
Типы данных |
Типы данных:
|
Используйте типы данных varchar(max), nvarchar(max) и varbinary(max). |
Типы данных: textntext или image |
4 |
Управление базами данных |
sp_attach_db sp_attach_single_file_db |
Инструкция CREATE DATABASE с параметром FOR ATTACH. Чтобы перестроить несколько файлов журнала, если один или более файлов изменили расположение, используйте параметр FOR ATTACH_REBUILD_LOG. |
sp_attach_db sp_attach_single_file_db |
81 82 |
Объекты базы данных |
CREATE DEFAULT DROP DEFAULT sp_bindefault sp_unbindefault |
Ключевое слово DEFAULT в инструкциях CREATE TABLE и ALTER TABLE |
CREATE_DROP_DEFAULT sp_bindefault sp_unbindefault |
162 64 65 |
Объекты базы данных |
CREATE RULE DROP RULE sp_bindrule sp_unbindrule |
Ключевое слово CHECK в инструкциях CREATE TABLE и ALTER TABLE |
CREATE_DROP_RULE sp_bindrule sp_unbindrule |
161 66 67 |
Объекты базы данных |
sp_change_users_login |
Используйте команду ALTER USER. |
sp_change_users_login |
Нет |
Объекты базы данных |
sp_depends |
sys.dm_sql_referencing_entities и sys.dm_sql_referenced_entities |
sp_depends |
195 |
Объекты базы данных |
sp_renamedb |
Параметр MODIFY NAME в инструкции ALTER DATABASE |
sp_renamedb |
79 |
Объекты базы данных |
sp_getbindtoken |
Использование режима MARS или распределенных транзакций. |
sp_getbindtoken |
98 |
Параметры базы данных |
sp_bindsession |
Использование режима MARS или распределенных транзакций. |
sp_bindsession |
97 |
Параметры базы данных |
sp_resetstatus |
ALTER DATABASE SET { ONLINE | EMERGENCY } |
sp_resetstatus |
83 |
Параметры базы данных |
Параметр TORN_PAGE_DETECTION инструкции ALTER DATABASE |
Параметр PAGE_VERIFY TORN_PAGE_DETECTION инструкции ALTER DATABASE. |
ALTER DATABASE WITH TORN_PAGE_DETECTION |
102 |
DBCC |
DBCC DBREINDEX |
Параметр REBUILD инструкции ALTER INDEX. |
DBCC DBREINDEX |
11 |
DBCC |
DBCC INDEXDEFRAG |
Параметр REORGANIZE инструкции ALTER INDEX |
DBCC INDEXDEFRAG |
18 |
DBCC |
DBCC SHOWCONTIG |
sys.dm_db_index_physical_stats |
DBCC SHOWCONTIG |
10 |
DBCC |
DBCC PINTABLE DBCC UNPINTABLE |
Данный параметр не делает ничего. |
DBCC [UN]PINTABLE |
189 |
Расширенные свойства |
Level0type = "type" и Level0type = "USER", чтобы добавить расширенные свойства к объектам типа level-1 или level-2. |
Используйте Level0type = "USER", только чтобы добавить расширенное свойство непосредственно роли или пользователю. Используйте Level0type = "SCHEMA", чтобы добавить расширенное свойство к типам level-1, таким как TABLE или VIEW, или типам level-2, таким как COLUMN или TRIGGER. Дополнительные сведения см. в разделе sp_addextendedproperty (Transact-SQL). |
EXTPROP_LEVEL0TYPE EXTPROP_LEVEL0USER |
13 14 |
Программирование расширенных хранимых процедур |
srv_alloc srv_convert srv_describe srv_getbindtoken srv_got_attention srv_message_handler srv_paramdata srv_paraminfo srv_paramlen srv_parammaxlen srv_paramname srv_paramnumber srv_paramset srv_paramsetoutput srv_paramstatus srv_paramtype srv_pfield srv_pfieldex srv_rpcdb srv_rpcname srv_rpcnumber srv_rpcoptions srv_rpcowner srv_rpcparams srv_senddone srv_sendmsg srv_sendrow srv_setcoldata srv_setcollen srv_setutype srv_willconvert srv_wsendmsg |
Вместо этого используйте интеграцию со средой CLR. |
XP_API |
20 |
Программирование расширенных хранимых процедур |
sp_addextendedproc sp_dropextendedproc sp_helpextendedproc |
Вместо этого используйте интеграцию со средой CLR. |
sp_addextendedproc sp_dropextendedproc sp_helpextendedproc |
94 95 96 |
Расширенные хранимые процедуры |
xp_grantlogin xp_revokelogin xp_loginConfig |
Используйте инструкцию CREATE LOGIN. Используйте аргумент DROP LOGIN IsIntegratedSecurityOnly в SERVERPROPERTY. |
xp_grantlogin xp_revokelogin xp_loginconfig |
44 45 59 |
Функции |
fn_get_sql |
sys.dm_exec_sql_text |
fn_get_sql |
151 |
Параметры индекса |
sp_indexoption |
ALTER INDEX |
sp_indexoption |
78 |
Параметры индекса |
Синтаксис CREATE TABLE, ALTER TABLE или CREATE INDEX без заключения параметров в скобки. |
Перепишите инструкции для использования текущего синтаксиса. |
INDEX_OPTION |
33 |
Объекты базы данных |
Возможность возвращать результирующие наборы из триггеров. |
Нет |
Возвращение результатов от триггера. |
12 |
Параметры экземпляра |
sp_configure параметр 'allow updates' |
Системные таблицы теперь недоступны для обновления. Параметр не делает ничего. |
sp_configure 'allow updates' |
173 |
Параметры экземпляра |
Параметры sp_configure:
|
Теперь настраивается автоматически. Параметр не делает ничего. |
sp_configure 'locks' sp_configure 'open objects' sp_configure 'set working set size' |
174 175 176 |
Параметры экземпляра |
Параметры sp_configure — 'user instances enabled' и «user instance timeout» |
Больше не нужны, поскольку соответствующие функции есть в SQL Server Compact 3.5 с пакетом обновления 1 (SP1). Параметр не делает ничего. |
Нет |
Нет |
Параметры экземпляра |
sp_configure параметр «priority boost' |
Системные таблицы теперь недоступны для обновления. Параметр не делает ничего. |
sp_configure 'priority boost' |
199 |
Параметры экземпляра |
sp_configure параметр «remote proc trans» |
Системные таблицы теперь недоступны для обновления. Параметр не делает ничего. |
sp_configure 'remote proc trans' |
37 |
Связанные серверы |
Указание поставщика SQLOLEDB для связанных серверов. |
Собственный клиент SQL Server (SQLNCLI) |
SQLOLEDDB для связанных серверов |
19 |
Блокировки |
sp_lock |
sys.dm_tran_locks |
sp_lock |
99 |
Служба SQL Mail |
Компонент Database Mail |
SQLMail |
||
Метаданные |
FILE_ID INDEXKEY_PROPERTY |
FILE_IDEX sys.index_columns |
FILE_ID INDEXKEY_PROPERTY |
15 17 |
Собственные веб-службы с поддержкой XML |
Инструкция CREATE ENDPOINT или ALTER ENDPOINT с параметром FOR SOAP. sys.endpoint_webmethods sys.soap_endpoints |
Вместо этого следует использовать технологию WCF (Windows Communications Foundation) или ASP.NET. |
CREATE/ALTER ENDPOINT sys.endpoint_webmethods sys.soap_endpoints |
21 22 23 |
Программирование |
Управляющие объекты баз данных SQL Server (SQL-DMO). |
Управляющие объекты баз данных SQL Server (SQL-DMO) удалены из SQL Server 2008 Express и будут удалены из других выпусков. Рекомендуется как можно скорее внести изменения в приложения, которые пользуют эти компоненты. Если поддержка объектов SQL-DMO для SQL Server необходима, установите компоненты обратной совместимости из пакета возможностей SQL Server 2005 из центра загрузки Майкрософт. Не используйте объекты SQL-DMO при разработке новых приложений, вместо них следует использовать объекты SMO SQL Server. Документация по объектам SMO доступна после установки электронной документации по SQL Server 2005. |
Нет |
|
Удаляемые базы данных |
sp_certify_removable sp_create_removable |
sp_detach_db |
sp_certify_removable sp_create_removable |
74 75 |
Удаляемые базы данных |
sp_dbremove |
DROP DATABASE |
sp_dbremove |
76 |
Безопасность |
Синтаксис ALTER LOGIN WITH SET CREDENTIAL. |
Заменен новым синтаксисом ALTER LOGIN ADD и DROP CREDENTIAL. |
ALTER LOGIN WITH SET CREDENTIAL |
230 |
Безопасность |
sp_addapprole sp_dropapprole |
CREATE APPLICATION ROLE DROP APPLICATION ROLE |
sp_addapprole sp_dropapprole |
53 54 |
Безопасность |
sp_addlogin sp_droplogin |
CREATE LOGIN DROP LOGIN |
sp_addlogin sp_droplogin |
39 40 |
Безопасность |
sp_adduser sp_dropuser |
CREATE USER DROP USER |
sp_adduser sp_dropuser |
49 50 |
Безопасность |
sp_grantdbaccess sp_revokedbaccess |
CREATE USER DROP USER |
sp_grantdbaccess sp_revokedbaccess |
51 52 |
Безопасность |
sp_addrole sp_droprole |
CREATE ROLE DROP ROLE |
sp_addrole sp_droprole |
56 57 |
Безопасность |
sp_approlepassword sp_password |
ALTER APPLICATION ROLE ALTER LOGIN |
sp_approlepassword sp_password |
55 46 |
Безопасность |
sp_changeobjectowner |
ALTER SCHEMA или ALTER AUTHORIZATION |
sp_changeobjectowner |
58 |
Безопасность |
sp_defaultdb sp_defaultlanguage |
ALTER LOGIN |
sp_defaultdb sp_defaultlanguage |
47 48 |
Безопасность |
sp_denylogin sp_grantlogin sp_revokelogin |
ALTER LOGIN DISABLE CREATE LOGIN DROP LOGIN |
sp_denylogin sp_grantlogin sp_revokelogin |
42 41 43 |
Безопасность |
USER_ID |
DATABASE_PRINCIPAL_ID |
USER_ID |
16 |
Безопасность |
sp_srvrolepermission sp_dbfixedrolepermission |
Эти хранимые процедуры возвращают данные, которые были верны в SQL Server 2000. Выходные данные не отражают изменений в иерархии разрешений, реализованной в SQL Server 2008. Дополнительные сведения см. в разделе Разрешения предопределенных ролей сервера (компонент Database Engine). |
sp_srvrolepermission sp_dbfixedrolepermission |
61 60 |
Безопасность |
GRANT ALL DENY ALL REVOKE ALL |
Специальные разрешения GRANT, DENY и REVOKE. |
Разрешение ALL |
35 |
Безопасность |
Внутренняя функция PERMISSIONS |
Вместо этого вызовите функцию sys.fn_my_permissions. |
PERMISSIONS |
170 |
Безопасность |
Инструкция SETUSER |
EXECUTE AS |
Инструкция SETUSER |
165 |
Безопасность |
алгоритмы шифрования RC4 и DESX |
Используйте другой алгоритм, например AES. |
алгоритм DESX |
238 |
Классы SMO |
Класс Microsoft.SQLServer.Management.Smo.Information Класс Microsoft.SQLServer.Management.Smo.Settings Класс Microsoft.SQLServer.Management.Smo.DatabaseOptions Свойство Microsoft.SqlServer.Management.Smo.DatabaseDdlTrigger.NotForReplication |
Класс Microsoft.SqlServer.Management.Smo.Server Класс Microsoft.SqlServer.Management.Smo.Server Класс Microsoft.SqlServer.Management.Smo.Database Нет |
Нет |
Нет |
Агент SQL Server |
Уведомление net send. Уведомление по пейджинговой связи. Подсистема ActiveX. |
Уведомление по электронной почте. Уведомление по электронной почте. Сценарии Command или PowerShell. |
Нет |
Нет |
SQL Server Management Studio |
Интеграция обозревателя решений в среду SQL Server Management Studio Интеграция системы управления версиями в среду SQL Server Management Studio |
|
Нет |
Нет |
Системные таблицы |
sysaltfiles syscacheobjects syscolumns syscomments sysconfigures sysconstraints syscurconfigs sysdatabases sysdepends sysdevices sysfilegroups sysfiles sysforeignkeys sysfulltextcatalogs sysindexes sysindexkeys syslockinfo syslogins sysmembers sysmessages sysobjects sysoledbusers sysopentapes sysperfinfo syspermissions sysprocesses sysprotects sysreferences sysremotelogins sysservers systypes sysusers |
Представления совместимости. Дополнительные сведения см. в разделе Представления совместимости (Transact-SQL).
Важно!
Представления совместимости не показывают метаданные для новых функций SQL Server 2005. Рекомендуется обновить приложения, чтобы они использовали представления каталога. Дополнительные сведения см. в разделе Представления каталога (Transact-SQL).
|
sysaltfiles syscacheobjects syscolumns syscomments sysconfigures sysconstraints syscurconfigs sysdatabases sysdepends sysdevices sysfilegroups sysfiles sysforeignkeys sysfulltextcatalogs sysindexes sysindexkeys syslockinfo syslogins sysmembers sysmessages sysobjects sysoledbusers sysopentapes sysperfinfo syspermissions sysprocesses sysprotects sysreferences sysremotelogins sysservers systypes sysusers |
141 152 Нет 133 126 146 131 147 142 123 144 128 127 130 122 132 134 Нет 143 140 119 137 125 139 145 157 121 153 120 129 138 136 135 124 |
Системные таблицы |
sys.numbered_procedures sys.numbered_procedure_parameters |
Нет |
numbered_procedures numbered_procedure_parameters |
148 149 |
Системные функции |
fn_virtualservernodes fn_servershareddrives |
sys.dm_os_cluster_nodes sys.dm_io_cluster_shared_drives |
fn_virtualservernodes fn_servershareddrives |
155 156 |
Системные представления |
sys.sql_dependencies |
sys.sql_expression_dependencies |
sys.sql_dependencies |
196 |
Сжатие таблицы |
Использование формата хранения vardecimal. |
Формат хранения vardecimal является устаревшим. В SQL Server 2008 сжатие данных обрабатывает десятичные значения точно так же, как и другие типы данных. Вместо формата хранения vardecimal рекомендуется использовать сжатие данных. |
Формат хранения vardecimal |
200 |
Сжатие таблицы |
Использование процедуры sp_db_vardecimal_storage_format. |
Формат хранения vardecimal является устаревшим. В SQL Server 2008 сжатие данных обрабатывает десятичные значения точно так же, как и другие типы данных. Вместо формата хранения vardecimal рекомендуется использовать сжатие данных. |
sp_db_vardecimal_storage_format |
201 |
Сжатие таблицы |
Использование процедуры sp_estimated_rowsize_reduction_for_vardecimal. |
Вместо этого используйте сжатие данных и процедуру sp_estimate_data_compression_savings. |
sp_estimated_rowsize_reduction_for_vardecimal |
202 |
Табличные подсказки |
Указание параметра NOLOCK или READUNCOMMITTED в предложении FROM инструкции UPDATE или DELETE. |
Удалите табличные подсказки NOLOCK и READUNCOMMITTED из предложения FROM. |
NOLOCK или READUNCOMMITTED в инструкции UPDATE или DELETE. |
Нет |
Табличные подсказки |
Указание табличных подсказок без ключевого слова WITH. |
Используйте ключевое слово WITH. |
Табличная подсказка без ключевого слова WITH. |
8 |
Табличные подсказки |
Табличная подсказка HOLDLOCK без скобок. |
167 |
||
Табличные подсказки |
INSERT_HINTS |
34 |
||
Текстовые указатели |
WRITETEXT UPDATETEXT READTEXT |
Нет |
UPDATETEXT или WRITETEXT READTEXT |
115 114 |
Текстовые указатели |
TEXTPTR() TEXTVALID() |
Нет |
TEXTPTR TEXTVALID |
5 6 |
Transact-SQL |
:: последовательность вызова функций |
Заменено на SELECT column_list FROM sys.<function_name>(). Например, замените SELECT * FROM ::fn_virtualfilestats(2,1) на SELECT * FROM sys.fn_virtualfilestats(2,1). |
Синтаксис вызова функции «::» |
166 |
Transact-SQL |
Ссылки на столбцы с трех- и четырехкомпонентными именами. |
Использование двухкомпонентных имен совместимо со стандартом. |
Более чем двухкомпонентное имя столбца |
3 |
Transact-SQL |
Строка, заключенная в кавычки, использовалась как псевдоним столбца для выражения в списке SELECT: 'string_alias' = expression |
expression [AS] column_alias expression [AS] [column_alias] expression [AS] "column_alias" expression [AS] 'column_alias' column_alias = expression |
Строковые литералы в качестве псевдонимов столбцов. |
184 |
Transact-SQL |
Пронумерованные процедуры. |
Нет. Не используйте. |
ProcNums |
160 |
Transact-SQL |
Синтаксис table_name.index_name в инструкции DROP INDEX. |
Синтаксис index_name ON table_name в инструкции DROP INDEX. |
DROP INDEX с двухкомпонентным именем. |
163 |
Transact-SQL |
Не используйте признак конца для инструкций Transact-SQL. |
Завершайте инструкции Transact-SQL признаком конца — точкой с запятой (;). |
Нет |
Нет |
Transact-SQL |
GROUP BY ALL |
Используйте решение с оператором UNION или производной таблицей для каждого случая отдельно. |
GROUP BY ALL |
169 |
Transact-SQL |
ROWGUIDCOL в качестве имени столбца в инструкциях DML. |
Используйте $rowguid. |
ROWGUIDCOL |
182 |
Transact-SQL |
IDENTITYCOL в качестве имени столбца в инструкциях DML. |
Используйте $identity. |
IDENTITYCOL |
183 |
Transact-SQL |
Использование # и ## в качестве имен временной таблицы и временной хранимой процедуры. |
Используйте по крайней мере один дополнительный символ. |
Символы «#» и «##» в качестве имен временных таблиц и хранимых процедур. |
Нет |
Transact-SQL |
Используйте @, @@ или @@ в качестве идентификаторов Transact-SQL. |
Не используйте в качестве идентификаторов @, @@ или имена, начинающиеся символами @@. |
«@» и имена, начинающиеся с «@@» в качестве идентификаторов Transact-SQL. |
Нет |
Transact-SQL |
Используйте ключевое слово DEFAULT в качестве значения по умолчанию. |
Не используйте слово DEFAULT в качестве значения по умолчанию. |
Ключевое слово DEFAULT в качестве значения по умолчанию. |
187 |
Transact-SQL |
Использование пробела в качестве разделителя табличных подсказок. |
В качестве разделителя отдельных табличных подсказок используйте запятую. |
Несколько табличных подсказок без запятых. |
168 |
Transact-SQL |
Список выбора статистического индексированного представления должен содержать функцию COUNT_BIG (*) в режиме совместимости 90. |
Вместо этого следует использовать функцию COUNT_BIG. |
Список выбора представления индекса без COUNT_BIG(*). |
2 |
Transact-SQL |
Косвенно табличные подсказки применяются для того, чтобы вызывать через представление возвращающую табличное значение функцию, состоящую из нескольких инструкций. |
Нет |
Косвенные подсказки возвращающих табличное значение функций. |
7 |
Transact-SQL |
Синтаксис ALTER DATABASE: MODIFY FILEGROUP READONLY MODIFY FILEGROUP READWRITE |
MODIFY FILEGROUP READ_ONLY MODIFY FILEGROUP READ_WRITE |
MODIFY FILEGROUP READONLY MODIFY FILEGROUP READWRITE |
195 196 |
Другое |
DB-Library Embedded SQL для языка C. |
Хотя компонент Database Engine до сих пор поддерживает соединения из существующих приложений, использующих API DB-Library и Embedded SQL, файлы или документация, необходимые для разработки приложений с помощью этих API, не предоставляются. В следующей версии компонента SQL Server Database Engine не будут поддерживаться соединения приложений DB-Library или Embedded SQL. Не используйте DB-Library или Embedded SQL для разработки новых приложений. Удалите все зависимости от DB-Library или Embedded SQL при изменении существующих приложений. Используйте вместо этих API пространство имен SQLClient или такой API, как OLE DB или ODBC. В состав SQL Server 2008 не входит DLL-библиотека DB-Library, необходимая для запуска этих приложений. Для запуска приложений DB-Library или Embedded SQL необходимо иметь доступ к DLL-библиотеке DB-Library для SQL Server 6.5, SQL Server 7.0 или SQL Server 2000. |
Нет |
Нет |
Журнал изменений
Обновленное содержимое |
---|
Скорректированная информация в категории обновленных серверов. Категория событий OLEDB как устаревшая функция для связанных серверов заменена на поставщик SQLOLEDB, а также добавлен собственный клиент SQL Server. |
В список устаревших параметров экземпляра добавлен параметр user instance timeout процедуры sp_configure. |
В список устаревших функций добавлен параметр шифрования DESX. |