批處理截取字符串 為什么一些大公司都喜歡用字符串拼接sql?
為什么一些大公司都喜歡用字符串拼接sql?讓我們先表明立場。任何時(shí)候都不要在后臺(tái)代碼中拼接SQL。(中小企業(yè)內(nèi)部報(bào)告要求除外)首先,“全部”的命題顯然是假的。在互聯(lián)網(wǎng)公司的應(yīng)用領(lǐng)域,嚴(yán)格禁止嵌套和拼接
為什么一些大公司都喜歡用字符串拼接sql?
讓我們先表明立場。任何時(shí)候都不要在后臺(tái)代碼中拼接SQL。(中小企業(yè)內(nèi)部報(bào)告要求除外)
首先,“全部”的命題顯然是假的。在互聯(lián)網(wǎng)公司的應(yīng)用領(lǐng)域,嚴(yán)格禁止嵌套和拼接SQL。一個(gè)大流量的超高并發(fā)系統(tǒng),數(shù)據(jù)庫鏈接池資源,非常有價(jià)值。它基本上決定了系統(tǒng)性能的上限。否則,為什么要添加分布式緩存和單獨(dú)的數(shù)據(jù)庫和表呢?對(duì)于高頻低熵的系統(tǒng),最可靠的方法是高頻低功耗地連接數(shù)據(jù)庫。
其次,對(duì)于各類大型傳統(tǒng)IT服務(wù)行業(yè)、政府和銀行系統(tǒng),系統(tǒng)本身的并發(fā)性與一線互聯(lián)網(wǎng)公司相比非常低。因此,線程可能需要更長的時(shí)間來保持?jǐn)?shù)據(jù)庫鏈接,從而獲得更快的系統(tǒng)響應(yīng)。事實(shí)上,這不是明智之舉。顯然,互聯(lián)網(wǎng)的技術(shù)拆分和技術(shù)架構(gòu)更適合大公司的各種場景。把所有問題都交給SQL和存儲(chǔ)過程的傳統(tǒng)it方法已經(jīng)過時(shí)很多年了。
最后,對(duì)于具有高并發(fā)性的大型在線系統(tǒng),需要復(fù)雜的查詢。不建議在后臺(tái)SQL中使用復(fù)雜查詢。這個(gè)系統(tǒng)的成本顯然太高了。對(duì)于復(fù)雜的查詢,自然還有其他技術(shù)架構(gòu)需要實(shí)現(xiàn)。
你可以多關(guān)注一下一線互聯(lián)網(wǎng)公司的架構(gòu)技術(shù),也可以看看我之前的答案。
發(fā)現(xiàn)這個(gè)問題還是有人關(guān)注的。既然每個(gè)人都來自不同的業(yè)務(wù)領(lǐng)域,那我們就來談?wù)劙伞?/p>
問題本身是高并發(fā)系統(tǒng)的常識(shí)問題。無論是低頻高熵的傳統(tǒng)業(yè)務(wù),還是高頻低熵的互聯(lián)網(wǎng)業(yè)務(wù)公司,其技術(shù)架構(gòu)往往由業(yè)務(wù)特點(diǎn)決定。
傳統(tǒng)IT公司和IT服務(wù)公司的實(shí)施方式仍然如此粗糙。因?yàn)椴l(fā)性低,迭代速度快。當(dāng)然,如果能滿足低頻低熵的業(yè)務(wù)需求,也無可厚非。但僅從技術(shù)角度來看,可能并不理想。事實(shí)上,很少有人會(huì)在傳統(tǒng)公司的新項(xiàng)目中采用這種方式。(節(jié)省一些服務(wù)器也是一筆錢。)。
不同領(lǐng)域的許多學(xué)生對(duì)業(yè)務(wù)需求有不同的技術(shù)理解。技術(shù)專業(yè)的學(xué)生可以在不同的商業(yè)領(lǐng)域看到更多的機(jī)會(huì),接觸更多的技術(shù)解決方案。多想想技術(shù)架構(gòu)設(shè)計(jì)背后的業(yè)務(wù)原因。
此外,如果您有任何問題或疑問,請(qǐng)轉(zhuǎn)到我以前的答案或留言與我討論。如果你不喜歡就不要噴。
bat命令,按要求截取字符串,并合并?
測試文件[x
@echo off
CD和>測試文件[x
for/F(測試文件[x
for/F“delims=”%%I in(”Dirr/B/S/S/TXT/TXT)do(
sed“S/(key[1-2]to[key[1-2]to[key[1-2]to[1-2]to[key[1-2]/key[1-2]/key[1-2]to[1-2]/key[1-2]to[1-2]/key[1-2]to[1-2]/key[1-2]/鍵[1-2]/鍵[1-2]/P
!]sed]作為測試文件[echo off
!CD。測試文件[CD和測試文件[test file[test
!])執(zhí)行(
sed-n“/<table[^>]*>/,/</table>/P”“%%I”
]>>測試文件。X
啟動(dòng)測試文件。X
退出/b