1ãç¼åSQLåå¨è¿ç¨ï¼procedureï¼ï¼
2ã使ç¨SQLçBCPä¸exec master..xp_cmdshellå½ä»¤å®ææå®æ°æ®è¡¨æå
容导åºï¼
3ã使ç¨SQL Server代çä½ä¸å®ç°å®æ¶èªå¨æ§è¡å¯¼åºã
ä¸é¢æ¯è¿ç¨è¯¦è§£ï¼è¥ä½ è¿ææ´å¥½çæ¹å¼ï¼ç¼åç¥ã
å·¥å
·/åæ
SQL Server Management Studio
BCPä¸exec master..xp_cmdshell
æ¹æ³/æ¥éª¤
1
Createä¸ä¸ªæ°çprocedureï¼å¨å¼å¤´å¯ä»¥åä¸ä¸ªå¤ææ¥å³å®ä»ä¹æ¶åæ§è¡æ°æ®ç»æ导åºï¼ä¸é¢æ¥ççè¿ä¸ªåå¨è¿ç¨ï¼
Create procedure [dbo].[pr_Dept_Bak]
as
begin
---è¿éå¯ä»¥å¢å 对æ°æ®è¡¨çæ¥è¯¢æ¡ä»¶ææ´å¤çæ°æ®å¤çï¼
---å°ç»ææ¾å
¥ä¸ä¸ªæ°çæ°æ®è¡¨ï¼ç¶åå°è¿ä¸ªæ°è¡¨å¯¼åºEXCELæ件ï¼
declare @file_path varchar(200);--导åºEXCElæ件çè·¯å¾ï¼
declare @file_name varchar(200);--导åºEXCElçæ件åï¼
declare @exec_sql varchar(200);--SQLè¯å¥ï¼
---åå¼å®ä¹æ¯ä¸ºäºä»¥åä¿®æ¹è·¯å¾ææ件åæ´æ¹ä¾¿ã
set @file_path = 'E:\Dept_Bak\'
set @file_name = 'dept' + CONVERT(varchar(100), GETDATE(), 112)+'.xls'
set @exec_sql = 'select * from book.dbo.users_dept' ---æ°æ®è¡¨ä½¿ç¨çå®æ´è·¯å¾ï¼
set @exec_sql = ' bcp "'+@exec_sql+'" queryout "'+@file_path+''+@file_name+'" -c -T -U "sa" -P "SQLpassword"';
----U "sa" -P "SQLpassword" è¿æ¯æ°æ®åºçsaè´¦å·åå¯ç ï¼
exec master..xp_cmdshell @exec_sql
end
2
以ä¸åå¨è¿ç¨pr_Dept_Bak建ç«ï¼éè¦å¯¼åºçæ°æ®è¡¨æ¯users_deptï¼å¯¼åºçä½ç½®æ¯æ°æ®åºæ¬å°è®¡ç®æºçE:\Dept_Bakæ件夹ä¸ãéè¦å°è¿ä¸ªæ件夹建ç«å¥½ã
3
åå¤å¥½ä¹åï¼æ们éè¦è¿è¡æµè¯ä¸ä¸pr_Dept_Bakæ¯å¦æåï¼æ§è¡pr_Dept_Bakåå¨è¿ç¨ï¼å¯ä»¥çå°æ§è¡ç»ææ¯æåçï¼è¥è¿éä¸æåï¼åéè¦æ£æ¥ä¸ä¸å¸¦åå¨è¿ç¨ä¸çBCPä¸exec master..xp_cmdshellå½ä»¤çæ ¼å¼æ¯å¦æ£ç¡®ã
4
导åºåè½å®ç°äºï¼ç°å¨éè¦è®¾ç½®å®æ¶èªå¨æ§è¡å¯¼åºãå¨SQL Server Management Studioä¸ï¼SQL Server代ç-ä½ä¸-æ°å»ºä½ä¸ã
5
为æ°çä½ä¸è®¾å®å称ï¼å¯ä»¥ä¸ææè±æï¼åªæ¯ä¸ºäºæ¹ä¾¿åºåå
¶å®ä½ä¸ã
6
å¨æ¥éª¤ä¸ï¼ç¹å»æ°å»ºä½ä¸æ§è¡æ¥éª¤ãå³éè¦å®æ¶èªå¨æ§è¡çåå¨è¿ç¨pr_Dept_Bakã为ä»ä¹ä½¿ç¨çåå¨è¿ç¨ï¼ä¹æ¯å 为以åéè¦æ·»å æä¿®æ¹åè½æ´æ¹ä¾¿ï¼èä¸åå¨è¿ç¨æ´æ件æµè¯é®é¢æå¨ã
7
注æéæ©æ°æ®åºï¼å½ä»¤ä¸è¾å
¥exec pr_Dept_Bak æ§è¡åå¨è¿ç¨ãå 为å½ä»¤è¯å¥é½å¨åå¨è¿ç¨ä¸ï¼æ以è¿éå°±ç¸å¯¹æ¯è¾ç®åã
8
æåå°±æ¯è®¾å®å®æ¶èªå¨æ§è¡è®¡åï¼å¦æ¯å¤©çXXæ¶é´èªå¨æ§è¡è¿ä¸ªåå¨è¿ç¨ï¼æé´éå¤å°å°æ¶å¯¼åºSQL表ä¸æ¬¡ã
9
ä½ä¸å»ºç«ä¹åï¼åå¯ä»¥æ§è¡ä½ä¸æ¥éª¤æ¥æµè¯ä¸æ¬¡ï¼æ¯æåï¼å³é®ç¹å»å»ºç«çä½ä¸pr_Dept_Bakï¼ä½ä¸å¼å§æ¥éª¤ã
10
ä½ä¸æåï¼è¥ä¸æåï¼å¯ä»¥çå°é误æ示ï¼å¯ä»¥å¨ä½ä¸æ´»å¨çè§å¨ä¸æ¥çä½ä¸å¤±è´¥çåå ï¼é对解å³é®é¢ã
11
å°E:\Dept_Bakæ件夹ä¸ï¼å¯ä»¥çå°å¯¼åºçEXCELæ件äºï¼æ¥ä¸æ¥è¿å¯ä»¥ä½¿ç¨çSQLçé®ä»¶åè½ï¼èªå¨å°è¿ä¸ªEXCELæ件åéç»æå®çé®ç®±æ¥æ¶è
ã
温馨提示:答案为网友推荐,仅供参考