My friend Jamie Thomson, kick-ass SQL consultant, the “SSIS Junkie”, and super nice dude, just retweeted the following SQLMag.com article, very interesting to me:
Semicolon: By Itzik Ben-GanNot terminating T-SQL statements with a semicolon is on a deprecation path. http://bit.ly/mPKMnN
Check out the blog post that they refer to. If you recall, this feature (semicolon) was destined to terminate all TSQL statements as a requirement; in Books Online, it is mentioned here that it will be required in a future version, and most folks thought that the future version was the next version. Apparently not. I work with a guy who has done a great job adding the semicolon to all of his code – I haven’t started doing it yet, so I guess I have a little while to get used to doing it.
Remember an old post that I had with the following query:
SELECT object_name, instance_name, cntr_type
FROM sys.dm_os_performance_counters
WHERE OBJECT_NAME = 'SQLServer:Deprecated Features '
ORDER BY 2; – :)
Let’s run this thing in Denali and see wut up. Results below.
Thanks,
Lee
----------------------------------
# and ## as table names…removing that one still upsets me
Deprecated in Denali
'#' and '##' as the name of temporary tables and stored procedures
'::' function calling syntax
'@' and names that start with '@@' as Transact-SQL identifiers
ADDING TAPE DEVICE
ALL Permission
ALTER DATABASE WITH TORN_PAGE_DETECTION
ALTER LOGIN WITH SET CREDENTIAL
Azeri_Cyrillic_90
Azeri_Latin_90
BACKUP DATABASE or LOG TO TAPE
Create/alter SOAP endpoint
CREATE_DROP_DEFAULT
CREATE_DROP_RULE
Data types: text ntext or image
Database compatibility level 100
Database compatibility level 90
DATABASEPROPERTYEX('IsFullTextEnabled')
DBCC [UN]PINTABLE
DBCC DBREINDEX
DBCC INDEXDEFRAG
DBCC SHOWCONTIG
DBCC_EXTENTINFO
DBCC_IND
DEFAULT keyword as a default value
Deprecated encryption algorithm
DESX algorithm
dm_fts_active_catalogs
dm_fts_active_catalogs.is_paused
dm_fts_active_catalogs.previous_status
dm_fts_active_catalogs.previous_status_description
dm_fts_active_catalogs.row_count_in_thousands
dm_fts_active_catalogs.status
dm_fts_active_catalogs.status_description
dm_fts_active_catalogs.worker_count
dm_fts_memory_buffers
dm_fts_memory_buffers.row_count
DROP INDEX with two-part name
endpoint_webmethods
EXTPROP_LEVEL0TYPE
EXTPROP_LEVEL0USER
FILE_ID
fn_get_sql
fn_servershareddrives
fn_trace_geteventinfo
fn_trace_getfilterinfo
fn_trace_getinfo
fn_trace_gettable
fn_virtualservernodes
fulltext_catalogs
fulltext_catalogs.data_space_id
fulltext_catalogs.file_id
fulltext_catalogs.path
FULLTEXTCATALOGPROPERTY('LogSize')
FULLTEXTCATALOGPROPERTY('PopulateStatus')
FULLTEXTSERVICEPROPERTY('ConnectTimeout')
FULLTEXTSERVICEPROPERTY('DataTimeout')
FULLTEXTSERVICEPROPERTY('ResourceUsage')
GROUP BY ALL
Hindi
HOLDLOCK table hint without parenthesis
IDENTITYCOL
IN PATH
Index view select list without COUNT_BIG(*)
INDEX_OPTION
INDEXKEY_PROPERTY
Indirect TVF hints
INSERT NULL into TIMESTAMP columns
INSERT_HINTS
Korean_Wansung_Unicode
Lithuanian_Classic
Macedonian
MODIFY FILEGROUP READONLY
MODIFY FILEGROUP READWRITE
More than two-part column name
Multiple table hints without comma
NOLOCK or READUNCOMMITTED in UPDATE or DELETE
Numbered stored procedures
numbered_procedure_parameters
numbered_procedures
objidupdate
Old NEAR Syntax
OLEDB for ad hoc connections
PERMISSIONS
READTEXT
REMSERVER
RESTORE DATABASE or LOG WITH MEDIAPASSWORD
RESTORE DATABASE or LOG WITH PASSWORD
Returning results from trigger
ROWGUIDCOL
SET ANSI_NULLS OFF
SET ANSI_PADDING OFF
SET CONCAT_NULL_YIELDS_NULL OFF
SET ERRLVL
SET FMTONLY ON
SET OFFSETS
SET REMOTE_PROC_TRANSACTIONS
SET ROWCOUNT
SETUSER
soap_endpoints
sp_addapprole
sp_addextendedproc
sp_addlogin
sp_addremotelogin
sp_addrole
sp_addrolemember
sp_addserver
sp_addsrvrolemember
sp_addtype
sp_adduser
sp_approlepassword
sp_attach_db
sp_attach_single_file_db
sp_bindefault
sp_bindrule
sp_bindsession
sp_certify_removable
sp_change_users_login
sp_changedbowner
sp_changeobjectowner
sp_configure 'affinity mask'
sp_configure 'affinity64 mask'
sp_configure 'allow updates'
sp_configure 'c2 audit mode'
sp_configure 'default trace enabled'
sp_configure 'disallow results from triggers'
sp_configure 'ft crawl bandwidth (max)'
sp_configure 'ft crawl bandwidth (min)'
sp_configure 'ft notify bandwidth (max)'
sp_configure 'ft notify bandwidth (min)'
sp_configure 'locks'
sp_configure 'open objects'
sp_configure 'priority boost'
sp_configure 'remote proc trans'
sp_configure 'set working set size'
sp_create_removable
sp_db_increased_partitions
sp_db_vardecimal_storage_format
sp_dbcmptlevel
sp_dbfixedrolepermission
sp_dbremove
sp_defaultdb
sp_defaultlanguage
sp_denylogin
sp_depends
sp_detach_db @keepfulltextindexfile
sp_dropapprole
sp_dropextendedproc
sp_droplogin
sp_dropremotelogin
sp_droprole
sp_droprolemember
sp_dropsrvrolemember
sp_droptype
sp_dropuser
sp_estimated_rowsize_reduction_for_vardecimal
sp_fulltext_catalog
sp_fulltext_column
sp_fulltext_database
sp_fulltext_service @action=clean_up
sp_fulltext_service @action=connect_timeout
sp_fulltext_service @action=data_timeout
sp_fulltext_service @action=resource_usage
sp_fulltext_table
sp_getbindtoken
sp_grantdbaccess
sp_grantlogin
sp_help_fulltext_catalog_components
sp_help_fulltext_catalogs
sp_help_fulltext_catalogs_cursor
sp_help_fulltext_columns
sp_help_fulltext_columns_cursor
sp_help_fulltext_tables
sp_help_fulltext_tables_cursor
sp_helpdevice
sp_helpextendedproc
sp_helpremotelogin
sp_indexoption
sp_lock
sp_password
sp_remoteoption
sp_renamedb
sp_resetstatus
sp_revokedbaccess
sp_revokelogin
sp_srvrolepermission
sp_trace_create
sp_trace_getdata
sp_trace_setevent
sp_trace_setfilter
sp_trace_setstatus
sp_unbindefault
sp_unbindrule
SQL_AltDiction_CP1253_CS_AS
sql_dependencies
String literals as column aliases
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
Table hint without WITH
Text in row table option
TEXTPTR
TEXTVALID
TIMESTAMP
UPDATETEXT or WRITETEXT
USER_ID
Using OLEDB for linked servers
Vardecimal storage format
XMLDATA
XP_API
xp_grantlogin
xp_loginconfig
xp_revokelogin
2cec3997-12df-4da7-8317-db4abe4218d0|1|4.0