在前兩波中,已完成了Excel與Sqlserver的查詢和上傳功能,但不免許多臨時的或更深刻地操做數據庫須要用Sql語句來操做,對通常用戶電腦裏,不可能有條件輕易安裝一個數據庫客戶端軟件,就算安裝了對其中煩多的功能操做也不勝任。數據庫
開發一個簡單的接受SQL語句對數據庫進行訪問操做就有點必要,固然這個落腳點放到Excel上是很不錯的選擇,畢竟全部用戶電腦都有安裝Excel。服務器
而且在Excel上批量構造SQL語句也是容易的事,如有數據須要從數據庫中導出,Excel做爲裝載小量數據並進行後續分析的容器是最佳選擇,故今天給你們獻上在Excel上向Sqlserver發送SQL命令並執行的功能。微信
雖然操做數據庫的任何操做均可以最終轉換爲寫特定的SQL語句去操做,但不表明用SQL語句去操做是最佳的選擇,就算專業的數據庫開發維護人員,對一大坨的SQL代碼也沒幾個能表示寫得快而準無差錯。數據結構
在Sqlserver數據庫上,惟SQL語句更是要命的,微軟自始以來就是以用戶體驗著稱,讓用戶能夠更低的成本操做數據庫,微軟自家出了SSMS數據庫管理工具,許多的數據庫的操做均可以落實爲界面可視化操做如:新建數據庫、數據表、視圖,增刪更改表字段類型等,都是界面化無比友好地操做,甚至能夠自動生成所需的SQL語句簡單小改一下便可達到想要的效果。函數
所以,對數據庫開發管理者來講,在Excel上使用SQL語句訪問數據庫並不存在很大的方便性,如下是我我的想到的一些有必要在Excel裏使用SQL語句訪問數據庫的場景。工具
在第19波中,已經演示過讓用戶在Excel上輕鬆地向Sqlserver發出查詢,而且可以使用Excel自有的自動篩選界面友好無痕地實現條件查詢操做。性能
但此功能有部分場景未能涉及,如返回的表數據結構來源複雜,使用視圖的方式進行大量嵌套、子查詢性能有瓶頸,須要用到存儲過程來實現(存儲過程能夠有許多中間步驟,生成臨時表等操做,避免了直接查詢帶來的性能問題)。學習
同時某些數據返回不能直接用視圖,須要用存儲過程作一些複雜處理。此時有必要讓Excel也可使用存儲過程查詢所需數據。人工智能
在帶參數的存儲過程當中,還須要教導用戶理解參數怎麼個輸入和修改,讓用戶有能力實現相似條件查詢的效果,不用一次性返回過多的數據源讓Excel沒法招架住。插件
當用戶使用第20波手動導入了新的數據到Sqlserver上,可能某些用戶須要的結果表數據,依賴於當前上傳的表數據,而不以視圖的方式來關聯上傳表數據,而是以存儲過程的方式進行運算後再返回結果表,此時有必要讓用戶能夠手動執行存儲過程,生成新的結果表數據,再用第19波說起的方法,自助式地把所要的新的結果數據取回。
另外一方面,若是新的結果表數據不是依賴用戶上傳的數據,而是依賴生產系統裏的實時數據,如查看截止到當前的訂單數據。
通常數據倉庫裏的數據非實時數據(實時生產性數據與分析所需的歷史分離是較好的選擇,減小對生產數據庫的大批量數據查詢時的負荷,從而保障生產數據庫的穩定性)
通常的數據ETL操做只會在一天中某個時間進行(通常在凌晨業務系統不繁忙時),當前業務分析須要截止到如今的數據,此時須要手動執行ETL操做,通常調用一下Sqlserver的做業便可,此時若要把此需求返回給IT人員操做,溝通成本太大,IT人員也不樂意隨時去配合這種臨時性的任務。
此時若用戶能夠自行執行這些任務,就能夠完美解決了,因此IT人員給用戶一段SQL語句,而後授予其權限,用戶只需簡單單擊按鈕便可完成,就是Excel催化劑開發此功能的一大剛需場景。
此部分通常是給專業IT數據庫人員使用,通常用戶不建議使用臨時性的SQL查詢,而是應該把需求提取IT人員,讓IT人員編寫好相應的SQL,並固定爲存儲過程、視圖等對象,再由用戶自行去運行以上兩點說起的場景所要的任務。說句心理話,用習慣SSMS,沒有幾我的喜歡用其餘的Sqlserver客戶端,更不要說如此簡陋的只支持運行SQL語句的客戶端。
點擊功能區的【SQL執行語句】,打開如下窗體。
填寫服務器名、數據庫名、用戶、密碼等信息,若想找尋已使用過的鏈接信息,可點擊【選擇歷史鏈接信息】,從跳出的對話框中雙擊某一行記錄獲取。
在下方左側輸入所要執行的SQL語句
若須要對大段SQL語句進行格式化,方便更好地識別理解SQL內容,可點擊中部的【格式化SQL】,此時左右兩邊都會出現格式化後的SQL語句,其中右側會有關鍵字的高亮顯示。程序最終執行的是左側的SQL語句,右側僅供可視化閱讀。
若對當前的SQL語句在往後其餘時候複用,可對其進行保存下來,供下次直接調用使用。點擊【保存當前SQL語句】,填寫名稱和備註信息,方便下次檢索時查看。
若須要複用已使用過的SQL語句,點擊【選擇歷史SQL語句】,便可打開歷史保存過的SQL語句清單。雙擊某一行任一單元格便可引用此行的SQL語句到主窗口中。
在執行SQL語句時,區分有無返回結構表對應不一樣的執行按鈕操做
若執行的SQL語句,沒有返回結果表時,使用【SQL執行-無返回表數據】,如有表數據返回,根據須要是新建智能表存儲仍是覆蓋現有智能表,而選擇【SQL執行-返回表數據-新建智能表】仍是【SQL執行-返回表數據-現有智能表】。
有數據表返回的操做,原理上是經過Excel原生功能的訪問Sqlserver的工做薄鏈接中的修改其鏈接字符串和查詢SQL代碼。
使用此方式的好處是,當用戶想從Sqlserver抓取新的數據,無需重複以上的操做,只需點擊鼠標右鍵刷新一下便可。
操做數據庫最終的方式是向數據庫發出SQL查詢,但由於普通用戶沒法輕鬆掌握SQL語言,此時有必要用一些用戶可以掌握的方式去輔助完成。第19波中着重是查詢數據庫表、視圖信息,第20波是把Excel表數據上傳至數據庫中,此兩部分已大大減輕了數據庫開發管理者的平常工做。
同時今天的第21波里,更是無限開放了使用SQL語句對數據庫進行操做的功能,理論上已經能夠完成任何數據庫所需的操做,但鑑於大部分在Excel上使用SQL語句操做數據庫的可操做性不強或有更好的替代方案,也詳細進行緣由說明,把最有必要的部分着重演示說明了。
通過Excel與Sqlserver交互三步曲,已經大大地提高了普通Excel用戶的數據處理能力,也極大的減輕了數據庫開發管理者對用戶平常數據需求的開發難度,專一於業務邏輯和SQL語句編寫,最終向用戶推送數據結果將變得十分簡易。
一文帶你全面認識Excel催化劑系列功能
安裝過程詳解及安裝失敗解決方法
第1波-工做表導航
第2波-數字格式設置
第3波-與PowerbiDesktop互通互聯
第4波-一大波自定義函數高級應用,從新定義Excel函數的學習和使用方法
第5波-使用DAX查詢從PowerbiDeskTop中獲取數據源
第6波-導出PowerbiDesktop模型數據字典
第7波-智能選區功能
第8波-快速可視化數據
第9波-數據透視表自動設置
第10波-快速排列工做表圖形對象
第11波-快速批量插入圖片
第12波-快速生成、讀取、導出條形碼二維碼
第13波-一鍵生成自由報表
第14波-一鍵生成零售購物籃分析
第15波-接入AI人工智能NLP天然語言處理
第16波-N多使用場景的多維錶轉一維表
第17波-批量文件更名、下載、文件夾建立等
第18波-在Excel上也能玩上詞雲圖
第19波-Excel與Sqlserver零門檻交互-查詢篇
第20波-Excel與Sqlserver零門檻交互-數據上傳篇
第21波-Excel與Sqlserver零門檻交互-執行SQL
第22波-Excel文件類型、密碼批量修改,補齊Power短板
Excel催化劑先是一微信公衆號的名稱,後來順其名稱,正式推出了Excel插件,插件將持續性地更新,更新的週期視本人的時間而定爭取一週可以上線一個大功能模塊。Excel催化劑插件承諾我的用戶永久性無償使用!
Excel催化劑插件使用最新的佈署技術,實現一次安裝,往後全部更新自動更新完成,無需重複關注更新動態,手動下載安裝包從新安裝,只需一次安裝便可隨時保持最新版本!
Excel催化劑插件下載連接:https://pan.baidu.com/s/1gC6joqGY_SIg_yONga9PaQ
因插件使用VSTO開發技術完成,插件的安裝須要電腦知足相關的環境配置才能運行,且需可鏈接外網的方式實現自動更新機制,若下載安裝過程當中有任何疑問或須要離線版安裝等,儘可能不單獨私聊詢問,加QQ羣可高效解決(羣內已聚集了VSTO開發、Powerbi技術、Sqlserver商業智能等方面的國內頂尖大牛人物,進羣的好處不用多說了)
取名催化劑,因Excel自己的強大,並不是全部人可以立馬享受到,大部分人仍是在被Excel軟件所虐的階段,就是頭腦裏很清晰想達到的效果,並且高手們也已經實現出來,就是本身怎麼弄都弄不出來,或者更糟的是還不知道Excel可以作什麼而停留在不斷地重複、機械、手工地在作着數據,耗費着無數的青春年華歲月。因此催生了是否能夠做爲一種媒介,讓廣大的Excel用戶們能夠瞬間點燃Excel的爆點,無需苦苦地掙扎地沒日沒夜的技巧學習、高級複雜函數的燒腦,最終走向了從入門到放棄的道路。
最後Excel功能強大,其實還需樹立一個觀點,不是全部事情都要交給Excel去完成,也不是全部事情Excel都是十分勝任的,外面的世界仍然是一個廣闊的世界,Excel只是其中一枚耀眼的明星,還有其餘更多一樣精彩強大的技術、工具等。Excel催化劑也將借力這些其餘技術,讓Excel可以發揮更強大的爆發!
姓名:李偉堅,從事數據分析工做多年(BI方向),一名一樣在路上的學習者。
技術路線從一名普通用戶,經過Excel軟件的學習,今後走向數據世界,非科班IT專業人士。
歷經重重難關,終於在數據的道路上達到技術平原期,學習衆多的知識再也不太吃力,同時也造成了本身的一套數據解決方案(數據採集、數據加工清洗、數據多維建模、數據報表展現等)。
擅長技術領域:Excel等Office家族軟件、VBA&VSTO的二次開發、Sqlserver數據庫技術、Sqlserver的商業智能BI技術、Powerbi技術、雲服務器佈署技術等等。
2018年開始職業生涯做了重大調整,從原來的正職工做,轉爲自由職業者,暫無固定收入,暫對前面道路不太明朗,苦從新回到正職工做,對Excel催化劑的運營和開發一定受到很大的影響(正職工做時間內不可能維護也不可能隨便把工做時間內的成果公佈於外,工做外的時間也十分有限,因已而立之年,家庭責任重大)。
和廣大擁護者一同期盼:Excel催化劑一直能運行下去,我所惠及的羣體們可以給予支持(多留言鼓勵下、轉發下朋友圈推薦、小額打賞下和最重點的能夠和所在公司及同行推薦推薦,讓個人技術能夠在貴司發揮價值,實現共贏(初步設想能夠數據顧問的方式或一些小型項目開發的方式合做)。)