一個(gè)根據(jù)數(shù)據(jù)庫(kù)鏈接字符串,sql語(yǔ)句 即可將結(jié)果集導(dǎo)出到Excel的工具 分享,支持sqlserver,mysql。
前因
一個(gè)月前朋友找到我,讓我?guī)兔ψ鲆粋€(gè)根據(jù)sql導(dǎo)出查詢(xún)結(jié)果到Excel的工具(之前幫他一個(gè)導(dǎo)入Excel然后按其規(guī)則統(tǒng)計(jì)數(shù)據(jù)的工具)。
然后扔了我一個(gè)SQL語(yǔ)句,瞬間懵比。臥槽。這么多列,我特么得定義這么屬性,改了還得重新改程序(一直用EF)。
于是思考如何忽略列名,進(jìn)而如何做到通用,做到于我有益,而不是簡(jiǎn)單的幫個(gè)忙。
如何完成這個(gè)需求
Q:程序中根據(jù)SQL查詢(xún)出數(shù)據(jù)而不需要關(guān)注有哪些列?
A:將查詢(xún)結(jié)果保存到DataTable中然后遍歷
Q:如何將DataTable轉(zhuǎn)換Excel?
A:一搜,一試,可用之
Q:如何保存到本地?
A:待我改改寫(xiě)日志的方法
使用SqlSugar 4.x
進(jìn)行數(shù)據(jù)操作
SqlSugar 4.x是一款高性能(達(dá)到ADO.NET最高性能水平)、輕量級(jí)、支持多庫(kù)和人性化語(yǔ)法的ORM,語(yǔ)法方便,入門(mén)簡(jiǎn)單,功能強(qiáng)大。
對(duì)數(shù)據(jù)庫(kù)結(jié)構(gòu)沒(méi)太多要求,支持多主鍵,多自增列
SqlSugar支