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

們經(jīng)常會(huì)遇到這樣的要求:用戶給發(fā)過(guò)來(lái)一些數(shù)據(jù),要我們直接給存放到數(shù)據(jù)庫(kù)里面,有的是Insert,有的是Update等等,少量的數(shù)據(jù)我們可以采取最原始的辦法,也就是在SQL里面用Insert into來(lái)實(shí)現(xiàn),但是如果有幾十條幾百條甚至上千條數(shù)據(jù)的時(shí)候繼續(xù)寫單獨(dú)的SQL語(yǔ)句的話那就慘了,其實(shí)有兩種簡(jiǎn)單的方法;
第一,將Excel數(shù)據(jù)整理好了之后,通過(guò)SQL的導(dǎo)入功能直接導(dǎo)進(jìn)數(shù)據(jù)庫(kù),但是得保證數(shù)據(jù)庫(kù)字段和Excel的字段一致。
第二,通過(guò)Excel來(lái)生成對(duì)應(yīng)的SQL語(yǔ)句,直接將SQL語(yǔ)句復(fù)制到分析器里面執(zhí)行即可,本文就說(shuō)一下如何來(lái)實(shí)現(xiàn)這第二種辦法。
首先看下圖,我們的目的就是將這20條數(shù)據(jù)Insert到數(shù)據(jù)庫(kù)里面去,一條兩條的話可以自己寫Insert語(yǔ)句,這里有20條數(shù)據(jù),總不能完全手寫20條語(yǔ)句出來(lái)吧,
很顯然,不能一條一條的去寫SQL了,太多了,這里還只有20條,如果是200條,2000條數(shù)據(jù)呢?
INSERT INTO TableName(Column1,Column2,Column3) VALUES('Value1','Value2','Value3')
寫出一條語(yǔ)句之后,直接從頭拉到尾,你會(huì)發(fā)現(xiàn)所有的數(shù)據(jù)都有對(duì)應(yīng)的腳本了,這個(gè)時(shí)候你便可以直接復(fù)制到分析器,按一下"F5",OK,你的任務(wù)完成了。
因?yàn)樵诠嚼锩妫杂袝r(shí)候那些語(yǔ)句會(huì)變化,當(dāng)你生成這些語(yǔ)句之后,你可以選擇性的粘貼為數(shù)值,然后再放到SQL里面去執(zhí)行,如下:
好了,以上是我的一點(diǎn)兒小經(jīng)驗(yàn),希望對(duì)大家有用,只有互相分享才能得到提高,如果您覺(jué)得還行的話請(qǐng)幫忙頂一下,謝謝!
下面補(bǔ)充是啟源分享的
Excel快速生成SQL更新語(yǔ)句
供應(yīng)商調(diào)整了產(chǎn)品信息,我們的業(yè)務(wù)系統(tǒng)需要進(jìn)行同步。運(yùn)維部同事已經(jīng)把產(chǎn)品新的產(chǎn)品信息發(fā)過(guò)來(lái)。如圖:
雖然后臺(tái)可以調(diào)整參數(shù),但是竟然有幾百個(gè)產(chǎn)品都更新了,作為程序員的我們當(dāng)然不會(huì)傻傻的去挨個(gè)調(diào)整,使用SQL語(yǔ)句幾分鐘就搞定,而且還不出錯(cuò)。
Excel連接字符串使用 and符號(hào)(&),常量使用 雙引號(hào)(”),有這些只是就可以開(kāi)工了。
根據(jù)規(guī)則,在后邊的單元格中輸入公式。比如: =”update 表名 set 字段1='” & B2 & “‘,字段2='” & B2*1 & “‘ where 字段三='” & B3 & “‘”
如圖,每個(gè)選擇的單元格 還會(huì)自動(dòng)高亮,非常人性化。
測(cè)試單個(gè) 腳本無(wú)誤后,直接拉下來(lái),到查詢分析器里 執(zhí)行,你就會(huì)發(fā)現(xiàn),世界原來(lái)如此美好:)。
下面是brusss同學(xué)分享的
excel批量生成SQL語(yǔ)句操作
根據(jù)用戶提供的excel表格,根據(jù)其中某些列對(duì)excel中關(guān)聯(lián)的數(shù)據(jù)進(jìn)行數(shù)據(jù)庫(kù)更新,
用戶提供的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)或者單雙引號(hào)必須為英文符號(hào) 。
該文章只是工作中自己學(xué)習(xí)筆記,僅供參考
相關(guān)文章
陽(yáng)歷/農(nóng)歷轉(zhuǎn)換對(duì)照表怎么做? Excel制作日歷表/萬(wàn)年歷的最終版
想要制作陽(yáng)歷/農(nóng)歷轉(zhuǎn)換對(duì)照表,,通過(guò)這個(gè)對(duì)照表,你只需知道陽(yáng)歷日期,就可以快速準(zhǔn)確的找到對(duì)應(yīng)的農(nóng)歷日期,下面我們就來(lái)看看詳細(xì)制作方法2025-04-10三分鐘就搞定! Excel快速制作一個(gè)日歷表/萬(wàn)年歷的技巧
工作上需要制作一個(gè)日歷表/萬(wàn)年歷,該怎么制作呢?我們需要使用三個(gè)excel函數(shù)來(lái)實(shí)現(xiàn),詳細(xì)請(qǐng)看下文介紹2025-04-10這個(gè)函數(shù)公式簡(jiǎn)直太強(qiáng)了! excel按權(quán)重求和計(jì)算的技巧
Excel中有一個(gè)功能非常強(qiáng)大的函數(shù),它就是SUMPRODUCT函數(shù),既能求和、計(jì)數(shù)、權(quán)重計(jì)算,還能排名等,今天我們就來(lái)看看Excel根據(jù)權(quán)重求和的技巧2025-04-10tocol函數(shù)哪個(gè)版本能用? excel中tocol函數(shù)的兩種高級(jí)用法
TOCOL函數(shù)公式非常強(qiáng)大,值得一學(xué),從字面意義可以理解出來(lái),它是將數(shù)據(jù)轉(zhuǎn)換成一列的,今天分享TOCOL函數(shù)的2種高級(jí)用法2025-04-10Excel隱藏行和折疊行有什么不同? 隱藏行和折疊使用方法和區(qū)別介紹
excel表格進(jìn)行操作的時(shí)候,發(fā)現(xiàn)有隱藏和和折疊行,看上去效果一樣,都隱藏了,但是兩者是有很大區(qū)別的,詳細(xì)請(qǐng)看下文介紹2025-03-21Excel工齡計(jì)算不再愁! Excel隱藏函數(shù)DATEDIF輕松計(jì)算精確到天級(jí)的工齡
在日常工作中,我們經(jīng)常需要計(jì)算員工的工齡,以便進(jìn)行人事管理、薪資調(diào)整等工作,本文將詳細(xì)介紹如何在Excel表格中計(jì)算工齡,并提供多種實(shí)用方法供您選擇2025-03-13快速提高工作效率! Excel高手的8個(gè)技巧勸你學(xué)學(xué)
Excel數(shù)據(jù)處理遇到的問(wèn)題,99%都是由于奇葩的數(shù)據(jù)格式造成的,今天跟大家整理了幾個(gè)Excel表格構(gòu)建的規(guī)則,先不要問(wèn)為什么,照著做就對(duì)了2025-03-06Excel透視表1月到12月不能排序怎么辦? 數(shù)據(jù)透視表日期無(wú)法排序解決方法
如圖對(duì)數(shù)據(jù)透視表日期進(jìn)行升序排序后,仍不是我們想要的結(jié)果,有可能月份是文本,不能排列,下面我們就來(lái)看看詳細(xì)解決辦法2025-03-06財(cái)務(wù)審計(jì)必會(huì)! 2分鐘搞定用excel做賬齡劃分的技巧
首先咱們得明確一下賬齡的概念,簡(jiǎn)單來(lái)說(shuō),賬齡就是某個(gè)賬戶的余額從產(chǎn)生到現(xiàn)在的時(shí)間長(zhǎng)度,比如,一年以內(nèi)的賬齡就是那些在過(guò)去一年內(nèi)產(chǎn)生的債權(quán)或債務(wù),下面我們就來(lái)看看2025-03-06實(shí)現(xiàn)辦公自動(dòng)化! DeepSeek搭配Excel制作自定義按鈕的技巧
DeepSeek生成想要的代碼很方便,如果將生成的代碼放到excel中作為vba代碼使用,豈不是能實(shí)現(xiàn)辦公自動(dòng)化?下面我們就來(lái)看看實(shí)現(xiàn)方法2025-03-05