ͨ¹ýSQL´æ´¢¹ý³Ìɾ³ý¹ýÆÚµÄÊý¾Ý¿âBak±¸·ÝÎļþ
1.ÏÈÆôÓà xp_cmdshell À©Õ¹´æ´¢¹ý³Ì£º
Use Master
GO
Exec sp_configure 'show advanced options', 1
GO
Reconfigure;
GO
sp_configure 'xp_cmdshell', 1
GO
Reconfigure;
GO
(×¢£ºÒòΪxp_cmdshellÊǸ߼¶Ñ¡ÏËùÒÔÕâÀïÆô¶¯xp_cmdshell£¬ÐèÒªÏȽ« show advanced option ÉèÖÃΪ 1£¬±ã¿ÉÏÔʾ¸ß¼¶ÅäÖÃÑ¡Ïî¡£
¿ÉÒÔͨ¹ýÓï¾ä
Select is_advanced from sys.configurations Where name=N'xp_cmdshell'
²é¿´ÊÇ·ñ¸ß¼¶Ñ¡Ïî¡£
)
2.ɾ³ýÎļþµÄ´æ´¢¹ý³Ì£º
If object_id('sp_DeleteFiles') Is Not Null
Drop Proc sp_DeleteFiles
Go
Create Proc sp_DeleteFiles
(
@FilePath nvarchar(128),
@SearchPattern nvarchar(200),
@LastWriteTimeStart datetime,
@LastWriteTImeEnd datetime
)
As
Set Nocount On
Declare @Cmd nvarchar(2000),
@OutputInfo nvarchar(2000),
@Dir nvarchar(2000),
@Date datetime,
@FileName nvarchar(512)
Declare @Tmp Table(ID int Identity(1,1) Primary Key, OutputInfo nvarchar(2000))
Set @Cmd=N'Dir/A:-d/S/T:W/4 '+@FilePath+N'\'+Rtrim(@SearchPattern) /*DosÏÔʾÎļþ´úÂë*/
Insert Into @Tmp
Exec xp_cmdshell @Cmd
Declare Cur_dir Cursor For
Select OutputInfo from @tmp Where Patindex('%\%',OutputInfo)>0 Or IsDate(substring(OutputInfo,1,10))=1 /*¹ýÂËÖ»ÁôĿ¼ºÍÎļþÁбí*/
Open Cur_dir
Fetch 
Ïà¹ØÎĵµ£º
Ò»°ãµØ£¬ÈÕÆÚ¸ñʽ˵Ã÷·ûÊDz»Ì«Ãô¸ÐµÄ¡£È»¶ø£¬µ±ÎªÁËÏÔʾ¶øËµÃ÷ÈÕÆÚ¸ñʽ¡¢¶ÔÓÚÎı¾Êý¾ÝÖеÄ˵Ã÷·ûµÈÇé¿öÏ£¬Ëü¾Í±äµÃ±È½ÏÎñʵ¡¢¾ßÌåÁË¡£ÒÔÔ·ݵÄÃû×ÖΪÀý£¬Í¨¹ýÏÂÃæÒýÓõĽá¹û½âÊÍһϸÃÇé¿öµÄЧ¹û£º
TO_CHAR(SYSDATE,’MONTH’)=NOVEMBER
TO_CHAR(SYSDATE,’Month’)=November
TO_CHAR(SYSDATE,&rsq ......
²éѯËÙ¶ÈÂýµÄÔÒòºÜ¶à£¬³£¼ûÈçϼ¸ÖÖ
1¡¢Ã»ÓÐË÷Òý»òÕßûÓÐÓõ½Ë÷Òý(ÕâÊDzéѯÂý×î³£¼ûµÄÎÊÌ⣬ÊdzÌÐòÉè¼ÆµÄȱÏÝ)
2¡¢I/OÍÌÍÂÁ¿Ð¡£¬ÐγÉÁËÆ¿¾±Ð§Ó¦¡£
3¡¢Ã»Óд´½¨¼ÆËãÁе¼Ö²éѯ²»ÓÅ»¯¡£
4¡¢ÄÚ´æ²»×ã
5¡¢ÍøÂçËÙ¶ÈÂý
6¡¢²éѯ³öµÄÊý¾ÝÁ¿¹ý´ó£¨¿ÉÒÔ²ÉÓöà´Î²éѯ£¬ÆäË ......
ÔÚ±¾ÎÄÖУ¬GetDate()»ñµÃµÄÈÕÆÚÓÉÁ½²¿·Ö×é³É£¬·Ö±ðÊǽñÌìµÄÈÕÆÚºÍµ±Ê±µÄʱ¼ä£ºSelect GetDate() ÓÃDateName()¾Í¿ÉÒÔ»ñµÃÏàÓ¦µÄÄê¡¢Ô¡¢ÈÕ£¬È»ºóÔÙ°ÑËüÃÇÁ¬½ÓÆðÀ´¾Í¿ÉÒÔÁË£º
¡¡¡¡
Select Datename(year,GetDate())+'-'+Datename(month,GetDate())+'-'+Dat ......
ÈçºÎÔ¶³ÌÅжÏOracleÊý¾Ý¿âµÄ°²×°Æ½Ì¨
select * from v$version;
²é¿´±í¿Õ¼äµÄʹÓÃÇé¿ö
select sum(bytes)/(1024*1024) as free_space,tablespace_name
from dba_free_space
group by tablespace_name;
SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE,
(B.BYTES*100)/A.BYTES "% USED",(C.BYTES ......