通過Excel生成批量SQL語句(Excel快速生成SQL更新語句)
們經(jīng)常會遇到這樣的要求:用戶給發(fā)過來一些數(shù)據(jù),要我們直接給存放到數(shù)據(jù)庫里面,有的是Insert,有的是Update等等,少量的數(shù)據(jù)我們可以采取最原始的辦法,也就是在SQL里面用Insert into來實(shí)現(xiàn),但是如果有幾十條幾百條甚至上千條數(shù)據(jù)的時(shí)候繼續(xù)寫單獨(dú)的SQL語句的話那就慘了,其實(shí)有兩種簡單的方法;
第一,將Excel數(shù)據(jù)整理好了之后,通過SQL的導(dǎo)入功能直接導(dǎo)進(jìn)數(shù)據(jù)庫,但是得保證數(shù)據(jù)庫字段和Excel的字段一致。
第二,通過Excel來生成對應(yīng)的SQL語句,直接將SQL語句復(fù)制到分析器里面執(zhí)行即可,本文就說一下如何來實(shí)現(xiàn)這第二種辦法。
首先看下圖,我們的目的就是將這20條數(shù)據(jù)Insert到數(shù)據(jù)庫里面去,一條兩條的話可以自己寫Insert語句,這里有20條數(shù)據(jù),總不能完全手寫20條語句出來吧,

很顯然,不能一條一條的去寫SQL了,太多了,這里還只有20條,如果是200條,2000條數(shù)據(jù)呢?
INSERT INTO TableName(Column1,Column2,Column3) VALUES('Value1','Value2','Value3')

寫出一條語句之后,直接從頭拉到尾,你會發(fā)現(xiàn)所有的數(shù)據(jù)都有對應(yīng)的腳本了,這個(gè)時(shí)候你便可以直接復(fù)制到分析器,按一下"F5",OK,你的任務(wù)完成了。

因?yàn)樵诠嚼锩?,所以有時(shí)候那些語句會變化,當(dāng)你生成這些語句之后,你可以選擇性的粘貼為數(shù)值,然后再放到SQL里面去執(zhí)行,如下:

好了,以上是我的一點(diǎn)兒小經(jīng)驗(yàn),希望對大家有用,只有互相分享才能得到提高,如果您覺得還行的話請幫忙頂一下,謝謝!
下面補(bǔ)充是啟源分享的
Excel快速生成SQL更新語句
供應(yīng)商調(diào)整了產(chǎn)品信息,我們的業(yè)務(wù)系統(tǒng)需要進(jìn)行同步。運(yùn)維部同事已經(jīng)把產(chǎn)品新的產(chǎn)品信息發(fā)過來。如圖:

雖然后臺可以調(diào)整參數(shù),但是竟然有幾百個(gè)產(chǎn)品都更新了,作為程序員的我們當(dāng)然不會傻傻的去挨個(gè)調(diào)整,使用SQL語句幾分鐘就搞定,而且還不出錯(cuò)。
Excel連接字符串使用 and符號(&),常量使用 雙引號(”),有這些只是就可以開工了。
根據(jù)規(guī)則,在后邊的單元格中輸入公式。比如: =”update 表名 set 字段1='” & B2 & “‘,字段2='” & B2*1 & “‘ where 字段三='” & B3 & “‘”
如圖,每個(gè)選擇的單元格 還會自動(dòng)高亮,非常人性化。

測試單個(gè) 腳本無誤后,直接拉下來,到查詢分析器里 執(zhí)行,你就會發(fā)現(xiàn),世界原來如此美好:)。

下面是brusss同學(xué)分享的
excel批量生成SQL語句操作
根據(jù)用戶提供的excel表格,根據(jù)其中某些列對excel中關(guān)聯(lián)的數(shù)據(jù)進(jìn)行數(shù)據(jù)庫更新,
用戶提供的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單元格 :

輸入完畢,點(diǎn)擊如上截圖的 按鈕 ,鼠標(biāo)移動(dòng)到K2,右下角 ,出現(xiàn) “”+“”時(shí)雙擊書記左鍵 ,或者向下拖到至excel最后一行數(shù)據(jù)處,即可生成所有SQL, L列同樣如此 ,輸入時(shí)所有標(biāo)點(diǎn)或者單雙引號必須為英文符號 。
該文章只是工作中自己學(xué)習(xí)筆記,僅供參考
相關(guān)文章

excel中使用VBA提取指定文件夾中指定擴(kuò)展名的所有文件名的技巧
項(xiàng)目結(jié)束后,要把相關(guān)文件的存放位置整理成清單交給同事或領(lǐng)導(dǎo),提取文件夾名稱和路徑后,能讓接收方精準(zhǔn)找到對應(yīng)文件,減少溝通成本,確保工作銜接順暢,下面我們就來看看2026-02-26
不使用VBA! excel表格提取指定文件夾的所有文件名的技巧
Excel提供了一個(gè)名為FILES的宏表函數(shù),可以直接在Excel中批量提取指定文件夾下的文件名,這種方法適合有一定Excel基礎(chǔ)的用戶,操作相對簡單2026-02-26
拒絕低效率! Excel正確統(tǒng)計(jì)空單元格技巧
excel表格中數(shù)據(jù)很多,也存在很多空白單元格,想要統(tǒng)計(jì)空白單元格,該怎么操作呢?下面我們就通過公式快速實(shí)現(xiàn)2026-02-26
你還在逐個(gè)隱藏和取消隱藏工作表嗎? Excel快速批量取消隱藏工作表技巧
在制作Microsoft Excel工作簿時(shí),一般情況下很少會刪除源數(shù)據(jù)所在的Excel工作表,通常的操作辦法就是將暫時(shí)不用的Excel工作表隱藏起來,下面我們就來看看 Excel批量隱藏和2026-02-09
excel表格中銷售數(shù)據(jù)擰麻花怎么辦? 教你一招輕松搞定按顏色求和計(jì)數(shù)的
職場工作中經(jīng)常會遇到帶有設(shè)置單元格顏色的表格數(shù)據(jù)需要求和,或者按字體顏色和表格顏色求和,那么如何來進(jìn)行計(jì)算呢,詳細(xì)請看下文介紹2026-02-09
另類圖例玫瑰圖! excel創(chuàng)意玫瑰圖的制作方法
excel表格中的數(shù)據(jù)想要制作成創(chuàng)意圖表,該怎么制作玫瑰圖呢?下面我們就來看看excel玫瑰圖的制作方法2026-02-09
單元格還可以按需自定義設(shè)置! Excel單元格格式自定義技巧
excel表格中可以按需自定義設(shè)置,該怎么設(shè)置呢?下面我們就來根據(jù)實(shí)際的例子來看看詳細(xì)設(shè)置方法2026-01-19
Excel規(guī)劃求解根據(jù)多個(gè)變量尋求最佳方案
規(guī)劃求解是一個(gè)相對較復(fù)雜的分析工具,但是在對數(shù)據(jù)的預(yù)測分析上,可謂功能強(qiáng)大,下面我們就來舉例看看2026-01-15
輕松搞定方程式的計(jì)算! Excel隱藏的強(qiáng)大工具使用攻略
“規(guī)劃求解”是一組命令的組成部分,借助“規(guī)劃求解”,可求得工作表上某個(gè)單元格中公式的最優(yōu)(最大或最小)值,并受工作表上其他公式單元格的值的約束或限制,詳細(xì)請看下2026-01-15
輕松掌握基礎(chǔ)功能! 給excel初學(xué)者的16個(gè)VBA基本代碼
歡迎來到VBA的世界!這里有一些簡單的代碼示例,幫助你快速理解VBA的基礎(chǔ)概念,通過這些代碼,你可以逐步掌握VBA的精髓,為更復(fù)雜的任務(wù)打下基礎(chǔ)2026-01-13

