通過Excel生成批量SQL語句(Excel快速生成SQL更新語句)


用戶給發過來一些數據,要我們直接給存放到數據庫里面,有的是Insert,有的是Update等等,少量的數據我們可以采取最原始的辦法,也就是在SQL里面用Insert into來實現,但是如果有幾十條幾百條甚至上千條數據的時候繼續寫單獨的SQL語句的話那就慘了

 

們經常會遇到這樣的要求:用戶給發過來一些數據,要我們直接給存放到數據庫里面,有的是Insert,有的是Update等等,少量的數據我們可以采取最原始的辦法,也就是在SQL里面用Insert into來實現,但是如果有幾十條幾百條甚至上千條數據的時候繼續寫單獨的SQL語句的話那就慘了,其實有兩種簡單的方法;

第一,將Excel數據整理好了之后,通過SQL的導入功能直接導進數據庫,但是得保證數據庫字段和Excel的字段一致。

第二,通過Excel來生成對應的SQL語句,直接將SQL語句復制到分析器里面執行即可,本文就說一下如何來實現這第二種辦法。

首先看下圖,我們的目的就是將這20條數據Insert到數據庫里面去,一條兩條的話可以自己寫Insert語句,這里有20條數據,總不能完全手寫20條語句出來吧,

很顯然,不能一條一條的去寫SQL了,太多了,這里還只有20條,如果是200條,2000條數據呢?

1
INSERT INTO TableName(Column1,Column2,Column3) VALUES ( 'Value1' , 'Value2' , 'Value3' )

寫出一條語句之后,直接從頭拉到尾,你會發現所有的數據都有對應的腳本了,這個時候你便可以直接復制到分析器,按一下"F5",OK,你的任務完成了。

因為在公式里面,所以有時候那些語句會變化,當你生成這些語句之后,你可以選擇性的粘貼為數值,然后再放到SQL里面去執行,如下:

好了,以上是我的一點兒小經驗,希望對大家有用,只有互相分享才能得到提高,如果您覺得還行的話請幫忙頂一下,謝謝!

下面補充是啟源分享的

Excel快速生成SQL更新語句

供應商調整了產品信息,我們的業務系統需要進行同步。運維部同事已經把產品新的產品信息發過來。如圖:

雖然后台可以調整參數,但是竟然有幾百個產品都更新了,作為程序員的我們當然不會傻傻的去挨個調整,使用SQL語句幾分鍾就搞定,而且還不出錯。

Excel連接字符串使用 and符號(&),常量使用 雙引號(”),有這些只是就可以開工了。

根據規則,在后邊的單元格中輸入公式。比如: =”update 表名 set 字段1='” & B2 & “‘,字段2='” & B2*1 & “‘ where 字段三='” & B3 & “‘”

如圖,每個選擇的單元格 還會自動高亮,非常人性化。

測試單個 腳本無誤后,直接拉下來,到查詢分析器里 執行,你就會發現,世界原來如此美好:)。

下面是brusss同學分享的

excel批量生成SQL語句操作

根據用戶提供的excel表格,根據其中某些列對excel中關聯的數據進行數據庫更新,

用戶提供的excel如下:

在K2單元格輸入 :

="update business_contract_detail set haveInsuranceSum='"&E2&"',maxInsuranceRatio='"&G2&"',maxInsuranceAmount='"&F2&"' where serialno=(select serialno from business_contract where business_type = '"&B2&"')"

在L2單元格輸入:

="update business_contract_detail set minVehicleFinancingAmount ='"&H2&"',maxVehicleFinancingAmount ='"&I2&"',minShoufuRatio ='"&J2&"' where serialno=(select serialno from business_contract where business_type = '"&B2&"')"

如下圖 ,注意最好要保證excel要取值的列單元格格式為文本格式

L2單元格 :

輸入完畢,點擊如上截圖的 按鈕 ,鼠標移動到K2,右下角 ,出現 “”+“”時雙擊書記左鍵 ,或者向下拖到至excel最后一行數據處,即可生成所有SQL, L列同樣如此 ,輸入時所有標點或者單雙引號必須為英文符號 。

 轉自:https://www.jb51.net/office/excel/569081.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM