函數(shù)表格公式大全 mysql的PDO中exec()函數(shù)和execute()函數(shù)有什么區(qū)別呢?
mysql的PDO中exec()函數(shù)和execute()函數(shù)有什么區(qū)別呢?Exec執(zhí)行SQL語(yǔ)句并返回受影響的行數(shù)。此函數(shù)不返回結(jié)果集合。execute函數(shù)用于執(zhí)行預(yù)處理語(yǔ)句,只返回執(zhí)行結(jié)果的成功或失
mysql的PDO中exec()函數(shù)和execute()函數(shù)有什么區(qū)別呢?
Exec執(zhí)行SQL語(yǔ)句并返回受影響的行數(shù)。
此函數(shù)不返回結(jié)果集合。execute函數(shù)用于執(zhí)行預(yù)處理語(yǔ)句,只返回執(zhí)行結(jié)果的成功或失敗。也就是說(shuō),execute需要與prepare函數(shù)一起使用。這真是有點(diǎn)麻煩。在Python中,可以使用import語(yǔ)句導(dǎo)入模塊。導(dǎo)入不存在的模塊時(shí),會(huì)拋出importerror異常,因此可以使用try catch語(yǔ)句捕獲此異常,相應(yīng)的代碼如下:
當(dāng)然,主題的含義可能需要用戶輸入,而不是像這樣死寫在代碼中,這需要使用內(nèi)置的Python Exec的函數(shù)(注意它是Exec而不是Eval,Eval只能執(zhí)行表達(dá)式)。exec函數(shù)接收一個(gè)字符串參數(shù),并將該字符串作為python語(yǔ)句執(zhí)行。改進(jìn)后的代碼如下:
當(dāng)然,還有另一個(gè)想法。您可以使用PIP list或PIP freeze命令獲取所有已安裝的模塊,并判斷該模塊是否在列表中。您可以通過(guò)字符串匹配或正則表達(dá)式來(lái)判斷模塊是否在列表中。為了得到PIP list命令的返回結(jié)果,需要使用OS module的Popen函數(shù)(不能使用system函數(shù),因?yàn)檫@個(gè)函數(shù)不能得到命令的輸出)。相應(yīng)的代碼如下:
eval和exec函數(shù)的區(qū)別?
exec不是Cisco的,而是Linux的高級(jí)環(huán)境。Exec函數(shù)族,顧名思義,是一組函數(shù)。它用一個(gè)新的程序文件替換當(dāng)前進(jìn)程映像,程序通常從主函數(shù)開始!使用fork函數(shù)創(chuàng)建子進(jìn)程后,子進(jìn)程通常會(huì)調(diào)用exec函數(shù)來(lái)執(zhí)行另一個(gè)程序。當(dāng)一個(gè)進(jìn)程調(diào)用exec函數(shù)時(shí),該進(jìn)程將被一個(gè)新程序完全替換,該程序?qū)乃闹骱瘮?shù)開始。因?yàn)檎{(diào)用exec不會(huì)創(chuàng)建新進(jìn)程,所以它前后的進(jìn)程ID不會(huì)更改。Exec只是用另一個(gè)新程序替換當(dāng)前進(jìn)程的主體、數(shù)據(jù)、堆和堆棧段。有六種不同的exec函數(shù)可用,通常稱為exec函數(shù)。這些exec函數(shù)是UNIX進(jìn)程控制原語(yǔ)。新進(jìn)程可以用fork創(chuàng)建,新程序可以用exec執(zhí)行。exit函數(shù)和兩個(gè)wait函數(shù)處理終止和等待終止。這些是我們需要的基本過(guò)程控制原語(yǔ)。