mssqlÀïsp_MSforeachtableºÍsp_MSforeachdbµÄÓ÷¨
´Ómssql6.5¿ªÊ¼£¬Î¢ÈíÌṩÁËÁ½¸ö²»¹«¿ª£¬·Ç³£ÓÐÓõÄϵͳ´æ´¢¹ý³Ìsp_MSforeachtableºÍsp_MSforeachdb£¬ÓÃÓÚ±éÀúij¸öÊý¾Ý¿âµÄÿ¸ö±íºÍ±éÀúDBMS¹ÜÀíϵÄÿ¸öÊý¾Ý¿â¡£
ÎÒÃÇÔÚmasterÊý¾Ý¿âÀïÖ´ÐÐÏÂÃæµÄÓï¾ä¿ÉÒÔ¿´µ½Á½¸öprocÏêϸµÄ´úÂë
use master
exec sp_helptext sp_MSforeachtable
exec sp_helptext sp_Msforeachdb
sp_MSforeachtableϵͳ´æ´¢¹ý³ÌÓÐ7¸ö²ÎÊý£¬½âÊÍÈçÏ£º
@command1 nvarchar£¨2000£©, --µÚÒ»ÌõÔËÐеÄT-SQLÖ¸Áî
@replacechar nchar£¨1£© = N'?', --Ö¸¶¨µÄռλ·ûºÅ
@command2 nvarchar£¨2000£©= null,--µÚ¶þÌõÔËÐеÄT-SQLÖ¸Áî
@command3 nvarchar£¨2000£©= null, --µÚÈýÌõÔËÐеÄT-SQLÖ¸Áî
@whereand nvarchar£¨2000£©= null, --¿ÉÑ¡Ìõ¼þÀ´Ñ¡Ôñ±í
@precommand nvarchar£¨2000£©= null, --ÔÚ±íǰִÐеÄÖ¸Áî
@postcommand nvarchar£¨2000£©= null --ÔÚ±íºóÖ´ÐеÄÖ¸Áî
sp_MSforeachdb³ýÁË@whereandÍ⣬ºÍsp_MSforeachtableµÄ²ÎÊýÊÇÒ»ÑùµÄ¡£
--ÎÒÃÇÀ´¿´¿´sp_MSforeachtableµÄÓ÷¨£¨sp_MSforeachdbµÄÓ÷¨ÀàËÆ£©£º
--ͳ¼ÆÊý¾Ý¿âÀïÿ¸ö±íµÄÏêϸÇé¿ö£º
exec sp_MSforeachtable @command1="sp_spaceused '?'"
--¼ì²éÊý¾Ý¿âÀïÿ¸ö±í»òË÷ÒýÊÓͼµÄÊý¾Ý¡¢Ë÷Òý¼°text¡¢ntext ºÍimage Ò³µÄÍêÕûÐÔ
--ÏÂÁÐÓï¾äÐèÔÚµ¥Óû§Ä£Ê½ÏÂÖ´ÐУ¨sp_dboption 'db_name', 'single user', 'true'£©,½«true¸Ä³Éfalse¾ÍÓÖ±ä³É¶àÓû§ÁË
exec sp_msforeachtable "dbcc checktable('?',repair_rebuild)"
Ïà¹ØÎĵµ£º
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[temp_Table]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[temp_Table]
GO
CREATE TABLE [dbo].[temp_Table] (
[id]&n ......
xtype ´ú±íÀàÐÍ
C = CHECK Ô¼Êø
D = ĬÈÏÖµ»ò DEFAULT Ô¼Êø
F = FOREIGN KEY Ô¼Êø
L = ÈÕÖ¾
FN = ±êÁ¿º¯Êý
IF = ÄÚǶ±íº¯Êý
P = ´æ´¢¹ý³Ì
PK = PRIMARY KEY Ô¼Êø£¨ÀàÐÍÊÇ K£©
RF = ¸´ÖÆÉ¸Ñ¡´æ´¢¹ý³Ì
S = ϵͳ±í
TF = ±íº¯Êý
TR = ´¥· ......
SQL Server ÌṩϵͳÊý¾ÝÀàÐͼ¯£¬¶¨ÒåÁË¿ÉÓë SQL Server Ò»ÆðʹÓõÄËùÓÐÊý¾ÝÀàÐÍ¡£ÏÂÃæÁгöϵͳÌṩµÄÊý¾ÝÀàÐͼ¯¡£
¿ÉÒÔ¶¨ÒåÓû§¶¨ÒåµÄÊý¾ÝÀàÐÍ£¬ÆäÊÇϵͳÌṩµÄÊý¾ÝÀàÐ͵ıðÃû¡£ÓйØÓû§¶¨ÒåµÄÊý¾ÝÀàÐ͵ĸü¶àÐÅÏ¢£¬Çë²Î¼û sp_addtype ºÍ´´½¨Óû§¶¨ÒåµÄÊý¾ÝÀàÐÍ¡£
µ±Á½¸ö¾ßÓв»Í¬Êý¾ÝÀàÐÍ¡¢ÅÅÐò¹æÔò¡¢¾«¶È¡¢Ð¡ÊýλÊý»ò³ ......