SQL Server有哪些隐藏特性?

例如,没有文档的系统存储过程,做一些非常有用但没有足够文档的事情的技巧?


答案

感谢大家的精彩回答!

存储过程

sp_msforeachtable: Runs a command with '?' replaced with each table name (v6.5 and up) sp_msforeachdb: Runs a command with '?' replaced with each database name (v7 and up) sp_who2: just like sp_who, but with a lot more info for troubleshooting blocks (v7 and up) sp_helptext: If you want the code of a stored procedure, view & UDF sp_tables: return a list of all tables and views of database in scope. sp_stored_procedures: return a list of all stored procedures xp_sscanf: Reads data from the string into the argument locations specified by each format argument. xp_fixeddrives:: Find the fixed drive with largest free space sp_help: If you want to know the table structure, indexes and constraints of a table. Also views and UDFs. Shortcut is Alt+F1

片段

Returning rows in random order All database User Objects by Last Modified Date Return Date Only Find records which date falls somewhere inside the current week. Find records which date occurred last week. Returns the date for the beginning of the current week. Returns the date for the beginning of last week. See the text of a procedure that has been deployed to a server Drop all connections to the database Table Checksum Row Checksum Drop all the procedures in a database Re-map the login Ids correctly after restore Call Stored Procedures from an INSERT statement Find Procedures By Keyword Drop all the procedures in a database Query the transaction log for a database programmatically.

功能

哈希字节() EncryptByKey 枢轴命令

Misc

Connection String extras TableDiff.exe Triggers for Logon Events (New in Service Pack 2) Boosting performance with persisted-computed-columns (pcc). DEFAULT_SCHEMA setting in sys.database_principles Forced Parameterization Vardecimal Storage Format Figuring out the most popular queries in seconds Scalable Shared Databases Table/Stored Procedure Filter feature in SQL Management Studio Trace flags Number after a GO repeats the batch Security using schemas Encryption using built in encryption functions, views and base tables with triggers


当前回答

SQL Server Management Studio键盘快捷键…这将使日常工作的结果越来越快。http://sqlserver-qa.net/blogs/tools/archive/2007/04/25/management-studio-shortcut-keys.aspx

其他回答

SQL Server 2005:

select * from sys.dm_os_performance_counters

select * from sys.dm_exec_requests

不是无证

行号由Itzik Ben-Gan 提供 http://www.sqlmag.com/article/articleid/97675/sql_server_blog_97675.html

设置xact_abort为on 在事务发生错误时回滚所有内容

所有的sp_都很有帮助,只是在网上浏览书籍

我在管理工作室一直使用的快捷键 F6 -结果和查询之间切换 Alt+X或F5-在查询中运行选中的文本,如果没有选中则运行整个窗口 Alt+T和Alt+D -结果在文本或网格分别

dm_db_index_usage_stats

这允许您知道表中的数据最近是否更新过,即使表上没有DateUpdated列。

SELECT OBJECT_NAME(OBJECT_ID) AS DatabaseName, last_user_update,*
FROM sys.dm_db_index_usage_stats
WHERE database_id = DB_ID( 'MyDatabase')
AND OBJECT_ID=OBJECT_ID('MyTable')

代码来自:http://blog.sqlauthority.com/2009/05/09/sql-server-find-last-date-time-updated-for-any-table/

参考资料: SQL Server -表的最后插入行的日期/时间是什么?

在SQL 2005及更高版本中可用

我发现sp_depends很有用。它显示依赖于给定对象的对象,例如。

exec sp_depends 'fn_myFunction' 

返回依赖于此函数的对象(注意,如果对象最初没有按照正确的顺序运行到数据库中,将会给出错误的结果。)

Sp_who2,就像sp_who一样,但是有更多关于故障排除块的信息