sqlserver bcpÃüÁ¿ìËÙ´¦Àí´óÊý¾Ý
	
    
    
	bcpÃüÁîÊÇSQL ServerÌṩµÄÒ»¸ö¿ì½ÝµÄÊý¾Ýµ¼Èëµ¼³ö¹¤¾ß¡£Ê¹ÓÃËü²»ÐèÒªÆô¶¯ÈκÎͼÐιÜÀí¹¤¾ß¾ÍÄÜÒÔ¸ßЧµÄ·½Ê½µ¼Èëµ¼³öÊý¾Ý¡£bcpÊÇSQL ServerÖиºÔðµ¼Èëµ¼³öÊý¾ÝµÄÒ»¸öÃüÁîÐй¤¾ß£¬ËüÊÇ»ùÓÚDB-LibraryµÄ£¬²¢ÇÒÄÜÒÔ²¢Ðеķ½Ê½¸ßЧµØµ¼Èëµ¼³ö´óÅúÁ¿µÄÊý¾Ý¡£bcp¿ÉÒÔ½«Êý¾Ý¿âµÄ±í»òÊÓͼֱ½Óµ¼³ö£¬Ò²ÄÜͨ¹ýSELECT fromÓï¾ä¶Ô±í»òÊÓͼ½øÐйýÂ˺󵼳ö¡£ÔÚµ¼Èëµ¼³öÊý¾Ýʱ£¬¿ÉÒÔʹÓÃĬÈÏÖµ»òÊÇʹÓÃÒ»¸ö¸ñʽÎļþ½«ÎļþÖеÄÊý¾Ýµ¼Èëµ½Êý¾Ý¿â»ò½«Êý¾Ý¿âÖеÄÊý¾Ýµ¼³öµ½ÎļþÖÐ.
1. bcpµÄÖ÷Òª²ÎÊý½éÉÜ
bcp¹²ÓÐËĸö¶¯×÷¿ÉÒÔÑ¡Ôñ¡£
(1) µ¼Èë¡£
Õâ¸ö¶¯×÷ʹÓÃinÃüÁîÍê³É£¬ºóÃæ¸úÐèÒªµ¼ÈëµÄÎļþÃû¡£
(2) µ¼³ö¡£
Õâ¸ö¶¯×÷ʹÓÃoutÃüÁîÍê³É£¬ºóÃæ¸úÐèÒªµ¼³öµÄÎļþÃû¡£
(3) ʹÓÃSQLÓï¾äµ¼³ö¡£
Õâ¸ö¶¯×÷ʹÓÃqueryoutÃüÁîÍê³É£¬Ëü¸úoutÀàËÆ£¬Ö»ÊÇÊý¾ÝÔ´²»ÊDZí»òÊÓͼÃû£¬¶øÊÇSQLÓï¾ä¡£
(4) µ¼³ö¸ñʽÎļþ¡£
Õâ¸ö¶¯×÷ʹÓÃformatÃüÁîÍê³É£¬ºó¶ø¸ú¸ñʽÎļþÃû¡£
ÏÂÃæ½éÉÜһЩ³£ÓõÄÑ¡Ï
-f format_file
format_file±íʾ¸ñʽÎļþÃû¡£Õâ¸öÑ¡ÏîÒÀÀµÓÚÉÏÊöµÄ¶¯×÷£¬Èç¹ûʹÓõÄÊÇin»òout£¬format_file±íʾÒѾ´æÔڵĸñʽÎļþ£¬Èç¹ûʹÓõÄÊÇformatÔò±íʾÊÇÒªÉú³ÉµÄ¸ñʽÎļþ¡£
-x
Õâ¸öÑ¡ÏîÒªºÍ-f format_fileÅäºÏʹÓã¬ÒÔ±ãÉú³Éxml¸ñʽµÄ¸ñʽÎļþ¡£
-F first_row
Ö¸¶¨´Ó±»µ¼³ö±íµÄÄÄÒ»Ðе¼³ö£¬»ò´Ó±»µ¼ÈëÎļþµÄÄÄÒ»Ðе¼Èë¡£
-L last_row
Ö¸¶¨±»µ¼³ö±íÒªµ¼µ½ÄÄÒ»ÐнáÊø£¬»ò´Ó±»µ¼ÈëÎļþµ¼Êý¾Ýʱ£¬µ¼µ½ÄÄÒ»ÐнáÊø¡£
-c
ʹÓÃcharÀàÐÍ×öΪ´æ´¢ÀàÐÍ£¬Ã»ÓÐǰ׺ÇÒÒÔ"\t"×öΪ×ֶηָî·û£¬ÒÔ"\n"×öΪÐзָî·û¡£
-w
ºÍ-cÀàËÆ£¬Ö»Êǵ±Ê¹ÓÃUnicode×Ö·û¼¯¿½±´Êý¾ÝʱʹÓã¬ÇÒÒÔnchar×öΪ´æ´¢ÀàÐÍ¡£
-t field_term
Ö¸¶¨×Ö·û·Ö¸î·û£¬Ä¬ÈÏÊÇ"\t"¡£
-r row_term
Ö¸¶¨Ðзָî·û£¬Ä¬ÈÏÊÇ"\n"¡£
-S server_name[ \instance_name]
Ö¸¶¨ÒªÁ¬½ÓµÄSQL Server·þÎñÆ÷µÄʵÀý£¬Èç¹ûδָ¶¨´ËÑ¡ÏbcpÁ¬½Ó±¾»úµÄSQL ServerĬÈÏʵÀý¡£Èç¹ûÒªÁ¬½Óij̨»úÆ÷ÉϵÄĬÈÏʵÀý£¬Ö»ÐèÒªÖ¸¶¨»úÆ÷Ãû¼´¿É¡£
-U login_id
Ö¸¶¨Á¬½ÓSQL SeverµÄÓû§Ãû¡£
-P password
Ö¸¶¨Á¬½ÓSQL ServerµÄÓû§ÃûÃÜÂë¡£
-T
Ö¸¶¨bcpʹÓÃÐÅÈÎÁ¬½ÓµÇ¼SQL Server¡£Èç¹ûδָ¶¨-T£¬±ØÐëÖ¸¶¨-UºÍ-P¡£
-k
Ö¸¶¨¿ÕÁÐʹÓÃnullÖµ²åÈ룬¶ø²»ÊÇÕâÁеÄĬÈÏÖµ¡£
2. ÈçºÎʹÓÃbcpµ¼³öÊý¾Ý
(1) ʹÓÃbcpµ¼³öÕû¸ö±í»òÊÓͼ¡£
bcp AdventureWorks.sales.currency out c:\currency1.txt -c -U"sa" -P"password" --ʹÓÃÃÜÂëÁ¬½Ó»òbcp AdventureWor
    
     
	
	
    
    
	Ïà¹ØÎĵµ£º
        
    
    /*
*SQLServerÌí¼Ó²Ù×÷ʵÏÖ
*/
void CMFCSQLDlg::OnButton2()
{
// TODO: Add your control notification handler code here
CString strsql;
CString strnum="mynum3";
CString strage="myage3";
HRESULT hResult;
_variant_t RecordsAffected;
CoInitialize(NULL);
_ConnectionPtr  m_pAppConn;
hResul ......
	
    
        
    
    
ÈçºÎ»ñµÃsqlserverÊý¾Ý¿âÖÐÕ¼ÓøßcpuÓû§µÄ»î¶¯ÄÚÈÝ
1¡¢´Ó΢ÈíÕ¾µãÉÏÏÂÔØqslice_setup.exe
2¡¢´ò¿ªQuery Analyzer£¬ÔËÐÐÒÔÏÂÓï¾ä£º
declare @a int
while (1<2)
begin
select @a=1
end
½«»á·¢ÏÖcpuÂíÉÏ´ïµ½100%
3¡¢´ò¿ªqlice.exe£¬½«·¢ÏÖsqlserver.exeµÄcpuÕ¼ÓÃÂʺܸߣ¬Ë«»÷½øÈ룬³öÐÐsqlserver.exeÖоßÌåÏß³ ......
	
    
        
    
    http://www.tongyi.net/article/20031101/200311013786.shtml
ËùνµÄÊý¾Ý´«Ê䣬ÆäʵÊÇÖ¸SQLServer·ÃÎÊAccess¡¢Excel¼äµÄÊý¾Ý¡£
ΪʲôҪ¿¼Âǵ½Õâ¸öÎÊÌâÄØ£¿
ÓÉÓÚÀúÊ·µÄÔÒò£¬¿Í»§ÒÔǰµÄÊý¾ÝºÜ¶à¶¼ÊÇÔÚ´æÈëÔÚÎı¾Êý¾Ý¿âÖУ¬ÈçAcess¡¢Excel¡¢Foxpro¡£ÏÖÔÚϵͳÉý¼¶¼°Êý¾Ý¿â·þÎñÆ÷ÈçSQLServer¡¢ORACLEºó£¬¾³£ÐèÒª·ÃÎÊÎı¾Êý ......
	
    
        
    
    set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
create function [dbo].[split](@str nvarchar(1000),@word varchar(5),@no 
int) returns nvarchar(500)
as begin
    declare @len int
    declare @index int
    set @index=charindex(@word,@str)
   ......