ͨ¹ýÅú´¦Àí£¬ÊµÏÖSQL ServerÊý¾Ý¿â¶¨ÆÚ±¸·Ýµ½ftp
@echo off
rem --------------------- ÅäÖÃ: ftpÉÏ´«²ÎÊý,¼°±¾µØÎļþĿ¼(Êý¾Ý¿â±¸·ÝµÄÁÙʱĿ¼)-----------------
set "PUT_FTP_SERVER=192.168.1.100"
set "PUT_FTP_PORT=21"
set "PUT_FTP_USERNAME=ftpuser"
set "PUT_FTP_PASSWORD=ftppasswd"
set "PUT_DIR=/"
set "LOCAL_DIR=D:\sql_dbbackup\"
rem ----------------------³ÌÐò¿ªÊ¼-----------------------------------------------------------------------
echo begin_backup_db
rem µ÷ÓÃÊý¾Ý¿â±¸·Ý´æ´¢¹ý³Ì,²ÎÊýΪ±¾µØÄ¿Â¼. Êý¾Ý¿â·µ»Ø"¹ýÆÚÐèҪɾ³ýµÄ±¸·ÝÎļþ"
sqlcmd -E -S 127.0.0.1,1333 -d master -v BAK_PATH="'%LOCAL_DIR%'" -Q "execute dbo.p_job_backup $(BAK_PATH);" -t 4800 -h -1 -W | findstr bak>>del_file.txt
rem ¿ªÊ¼×Ô¶¯ÉÏ´«(ÉÏ´«Íêɾ³ý¶ÔÓ¦µÄ±¾µØÎļþ)
echo begin_ftp_upload
call :uploaddir "%LOCAL_DIR%" "%PUT_DIR%"
rem ¼ì²éÊÇ·ñÉÏ´«Ê§°Ü,ʧ°ÜÔò¼Ç¼Êý¾Ý¿âÈÕÖ¾
echo begin_check
for /f "delims=" %%i in ('dir /b /a-d "%LOCAL_DIR%*.bak"') do echo %%~nxi>>local_file.txt
if not exist local_file.txt goto :delete_remote
for /f "delims=" %%i in (local_file.txt) do (
sqlcmd -E -S 127.0.0.1,1333 -d master -v FILE_NAME="'%%i'" -Q "insert into t_log_backup(loglevel, filename, remark) values(1,$(FILE_NAME),'ÑÏÖØ´íÎó:ÉÏ´«±¸·ÝÎļþʧ°Ü,Çë¼ì²éftpȨÏÞ.ͬʱËü»áµ¼Ö±¾µØ´ÅÅÌÂú.');" -t 3600
)
del /f/q local_file.txt
rem ¿ªÊ¼É¾³ýÔ¶³Ì¹ýÆÚÎļþ
echo begin_del_remote
:delete_remote
call :delremotefile "%LOCAL_DIR%" "%PUT_DIR%"
rem Æô¶¯Êý¾Ý¿â·¢ËÍÓʼþ(¼´·¢ËÍ´íÎóÈÕÖ¾)
sqlcmd -E -S 127.0.0.1,1333 -d master -Q "execute dbo.p_sendmail;" -t 120
echo end.
goto :eof
rem ---------------------³ÌÐò½áÊø-------------------------------------------------------------------------
rem ---------------------ÒÔϾùΪµ÷ÓõÄ×Óº¯Êý-------------------------------------------------------------
:uploaddir - upload directory tree
:: - %~1 local directory
:: - %~2 remote directory
setlocal
set "localdir=%~1"
set "remotedir=%~2"
call :put_autoftp cmdftp_uploaddir "
Ïà¹ØÎĵµ£º
ÕâЩº¯ÊýÔÚϵͳº¯Êý¿ÉÒÔÕÒµ½¡£ÏÂÃæÊÇÎÒÁ·Ï°Ê±Ð´µÄ´úÂ룬°üº¬Á˳£ÓõÄ×Ö·û´®²Ù×÷º¯Êý
/*********************************
³£ÓÃ×Ö·û´®º¯Êý:sqlÖÐûÓÐÊý×éÕâһ˵
*********************************/
--int charindex('ÒªÕÒµÄ×Ö·û´®','Ô´×Ö·û´®',¿ªÊ¼Î»ÖÃ)£¬»ñÈ¡×Ö·û´®ÖÐÖ¸¶¨×Ö·û´®µÄλÖÃ
declare @str varchar(50)
set ......
ÔÚÆ½Ê±µÄ¹¤×÷¹ý³ÌÖУ¬×÷ΪDBA½ÇÉ«¹ÜÀíÊý¾Ý¿â£¬Í·ÄÔÖеÄÓ¡ÏóÍùÍùÊÇÊý¾Ý¿âʵÀýÃû³Æ£¬¶ø²»»áÈ¥¹ØÐÄServerµÄIP£¬¶ø×÷ΪDeveloperµÄ½ÇÉ«£¬ËûÃÇÍùÍùÏëÖªµÀÖªµÀServer IpºÍ¶Ë¿ÚºÅ¡£ËùÒÔ£¬DBA»á¾³£±»Îʼ°µ½£ºXXXʵÀýµÄIPºÍ¶Ë¿ÚºÅÊÇʲô£¿
Õâ¸öÎÊÌ⣬µ±È»ÎÒÃÇ¿ÉÒÔLoginµ½OS²é¿´IP¡¢Ê¹ÓÃÅäÖÆ¹ÜÀí¹¤¾ß»ñÈ¡µ½¶Ë¿ÚºÅ¡£µ«ÊÇ£¬Õâ¸ö·½·¨·Ç ......
ͼ±í
ͼ±í(ÓֳƹØÏµÍ¼)ÊÇSQL ServerÖÐÒ»ÀàÌØÊâµÄÊý¾Ý¿â¶ÔÏó£¬ËüÌṩ¸øÓû§Ö±¹ÛµØ¹ÜÀíÊý¾Ý¿â±íµÄ·½·¨¡£Í¨¹ýͼ±í£¬Óû§¿ÉÒÔÖ±¹ÛµØ´´½¨¡¢±à¼Êý¾Ý¿â±íÖ®¼äµÄ¹ØÏµ£¬Ò²¿ÉÒÔ±à¼±í¼°ÆäÁеÄÊôÐÔ¡£ÀûÓÃÆóÒµ¹ÜÀíÆ÷´´½¨Í¼±íµÄ¾ßÌå²½ÖèÈçÏ£º
(1)ÔÚÆóÒµ¹ÜÀíÆ÷ÖУ¬Õ¹¿ªÖ¸¶¨µÄ·þÎñÆ÷ºÍÊý¾Ý¿â£¬´ò¿ªÒª½¨Á¢µÄͼ±íËùÔÚµÄÊý¾Ý¿â£¬ÓÒ»÷ͼ±íÍ ......
1Replaceº¯Êý
ÔÚSQL SERVER 2000ÖÐÓÐÒ»¸öÐÅÏ¢±í£¬´æ·ÅÐÂÎÅÐÅÏ¢£¬ÏÖÔÚ¿Í»§ÏëÅúÁ¿¸üÐÂÕâ¸ö×Ö¶ÎÖеÄijЩÎÄ×Ö£¬Ì滻ΪÆäËûÎÄ×Ö¡£
½â¾ö·½·¨£ºÀûÓÃreplaceº¯Êý
update detail set content=replace(content,'ÔÎÄ×Ö','Ìæ»»ºóÎÄ×Ö') where Ìõ¼þ ......
1,ÏÔʾÓαêµÄ²Ù×÷
(1) ¶¨ÒåÓαê
¸ù¾Ý²éѯµÄÊý¾ÝÇé¿ö£¬ÔÚPL/SQL¿éµÄÉùÃ÷²¿·Ö¶¨ÒåÓα꣬Ó﷨Ϊ£º
cursor cursor_name is select_statement;
×¢Ò⣺
ÓÎ±ê±ØÐëÔÚPL/SQL¿éµÄÉùÃ÷²¿·Ö½øÐж¨Ò壻
......