ͨ¹ý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 
Ïà¹ØÎĵµ£º
create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',
@pagesize int output,--ÿҳÏÔʾ¼Ç¼ÌõÊý
@currentpage int output,--µÚ¼¸Ò³
@orderid nvarchar(50),--Ö÷¼üÅÅÐò
@sort int,--ÅÅÐò·½Ê½£¬1±íʾÉýÐò£¬0±íʾ½µÐòÅÅÁÐ
......
CHARINDEXº¯Êý·µ»Ø×Ö·û»òÕß×Ö·û´®ÔÚÁíÒ»¸ö×Ö·û´®ÖÐµÄÆðʼλÖá£CHARINDEXº¯Êýµ÷Ó÷½·¨ÈçÏ£º
CHARINDEX ( expression1 , expression2 [ , start_location ] )
Expression1ÊÇÒªµ½expression2ÖÐѰÕÒµÄ×Ö·ûÖУ¬start_locationÊÇCHAR ......
²éѯËÙ¶ÈÂýµÄÔÒòºÜ¶à£¬³£¼ûÈçϼ¸ÖÖ
1¡¢Ã»ÓÐË÷Òý»òÕßûÓÐÓõ½Ë÷Òý(ÕâÊDzéѯÂý×î³£¼ûµÄÎÊÌ⣬ÊdzÌÐòÉè¼ÆµÄȱÏÝ)
2¡¢I/OÍÌÍÂÁ¿Ð¡£¬ÐγÉÁËÆ¿¾±Ð§Ó¦¡£
3¡¢Ã»Óд´½¨¼ÆËãÁе¼Ö²éѯ²»ÓÅ»¯¡£
4¡¢ÄÚ´æ²»×ã
5¡¢ÍøÂçËÙ¶ÈÂý
6¡¢²éѯ³öµÄÊý¾ÝÁ¿¹ý´ó£¨¿ÉÒÔ²ÉÓöà´Î²éѯ£¬ÆäË ......
ÏÖÓÐtable_for_report_1ºÍtable_for_report_2£¬ÏêÇéÈçÏ£º
table_for_report_1ÓÐnum×ֶΣ¬c1,c2,c3×ֶΡ£
Êý¾ÝÈçÏ£º
num c1 c2 c3
1 15001346690 11 12 13
2 1 ......
1. »ñÈ¡Êý¾Ý¿âÖе±Ç°Ô·ݵÄÏà¹ØÊý¾Ý
SELECT WorkerSortID, SUM(WorkerCount) AS WorkerMothCount
from WorkerRecord
WHERE (YEAR(WorkerTime) = YEAR({ fn NOW() })) AND (MONTH(WorkerTime)
= MONTH({ fn NOW() })) AND (WorkerCount > 0) AND (WorkerID = 'wy')
GROUP BY Worker ......