共計(jì) 1673 個(gè)字符,預(yù)計(jì)需要花費(fèi) 5 分鐘才能閱讀完成。
本篇內(nèi)容介紹了“SQL Server 如何利用 bcp 命令把 SQL 語(yǔ)句結(jié)果生成文本文件”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓丸趣 TV 小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
在 SQL Server 里可以調(diào)用 DOS 下的命令行工具 bcp 來(lái)實(shí)現(xiàn)把表里的數(shù)據(jù)或者 SQL 語(yǔ)句結(jié)果生成文本文件。BCP 命令的參數(shù)格式: 復(fù)制代碼 代碼如下:
BCP {dbtable | query} {in | out | queryout | format} datafile [-m maxerrors] [-f formatfile] [-e errfile] [-F firstrow] [-L lastrow] [-b batchsize] [-n native type] [-c character type] [-w wide character type] [-N keep non-text native] [-V file format version] [-q quoted identifier] [-C code page specifier] [-t field terminator] [-r row terminator] [-i inputfile] [-o outfile] [-a packetsize] [-S server name] [-U username] [-P password] [-T trusted connection] [-v version] [-R regional enable] [-k keep null values] [-E keep identity values] [-h load hints]
但命令行下面的操作在傳遞變量上不太靈活,我參照 CSDN 里鄒健寫 File2Table 的例子,寫了一個(gè)把 SQL 語(yǔ)句結(jié)果生成文本文件的系統(tǒng)存儲(chǔ)過(guò)程 sp_sql_query_to_file.sql: 復(fù)制代碼 代碼如下:
/*************************************************************************** // 說(shuō)明 : 根據(jù) SQL 語(yǔ)句生成文本文件 (帶日期戳,字段用逗號(hào), 分隔) // SQL 語(yǔ)句里所有出現(xiàn)的表名要用 [數(shù)據(jù)庫(kù)名].[用戶名].[表名] 來(lái)詳細(xì)標(biāo)記 // 創(chuàng)建 : maggiefengyu 郵件 : maggiefengyu@tom.com 日期 :2006-03-03 ***************************************************************************/ create PROCEDURE sp_sql_query_to_file(@servername varchar(50), – 服務(wù)器名 @username varchar(50), – 用戶名, 如果用 NT 驗(yàn)證方式, 則為空 @password varchar(50) , – 密碼 @sql_query varchar(2000) , –SQL 查詢語(yǔ)句, 有字符條件時(shí)用單引號(hào) @filePath_name varchar(1000), – 導(dǎo)出路徑和文件名 @date datetime – 保存文件時(shí)的生成日期戳 )AS DECLARE @sql varchar(8000) SET @sql= bcp +@sql_query + queryout + +@filePath_name+ _ + convert(varchar(12),@date,112)+ .txt /t , /w + /S +@servername +CASE WHEN ISNULL(@username,)= THEN ELSE /U +@username END + /P +ISNULL(@password,) select @sql EXEC master..xp_cmdshell @sql IF @@Error 0 BEGIN print 生成文件時(shí)出錯(cuò)了,請(qǐng)查看! +@@Error END GO
“SQL Server 如何利用 bcp 命令把 SQL 語(yǔ)句結(jié)果生成文本文件”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注丸趣 TV 網(wǎng)站,丸趣 TV 小編將為大家輸出更多高質(zhì)量的實(shí)用文章!