linux跑火車命令 如何用Sql語(yǔ)句循環(huán)執(zhí)行語(yǔ)句?
如何用Sql語(yǔ)句循環(huán)執(zhí)行語(yǔ)句?舉一個(gè)稍微極端的例子。假設(shè)您的代碼如下:for(int i=0I<500i){query statement},那么您的查詢語(yǔ)句將執(zhí)行500次。在一個(gè)稍微極端的點(diǎn)上,
如何用Sql語(yǔ)句循環(huán)執(zhí)行語(yǔ)句?
舉一個(gè)稍微極端的例子。假設(shè)您的代碼如下:for(int i=0I<500i){query statement},那么您的查詢語(yǔ)句將執(zhí)行500次。在一個(gè)稍微極端的點(diǎn)上,數(shù)據(jù)庫(kù)中執(zhí)行語(yǔ)句的時(shí)間被忽略了,服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器之間的網(wǎng)絡(luò)也不順暢。服務(wù)器向數(shù)據(jù)庫(kù)發(fā)送查詢需要一秒鐘,而返回查詢則需要一秒鐘。所以你就因?yàn)榫W(wǎng)絡(luò)等了1000秒。如果在for語(yǔ)句之外一次獲取500條數(shù)據(jù),則網(wǎng)絡(luò)請(qǐng)求的等待時(shí)間為2秒。根據(jù)我目前的經(jīng)驗(yàn),在for中避免使用SQL主要是為了避免網(wǎng)絡(luò)造成的瓶頸。當(dāng)然,如果修改for循環(huán)中的語(yǔ)句,也會(huì)鎖定表。通常,表將被鎖定,直到方法的執(zhí)行結(jié)束,對(duì)嗎?使用此表的其他接口將不一致