?
Ce document utilise Manuel du site Web PHP chinois Libérer
在Oracle快速進行數(shù)據(jù)行存在性檢查 ? 當(dāng)在應(yīng)用程序的業(yè)務(wù)邏輯中需要檢查一個外鍵是否有相關(guān)的主鍵時,往往使用Select Count(*)類型的SQL語句。這是一個很顯而易的方法,但卻不是最快的方法。Count(*)函數(shù)調(diào)用可能會引起對整個表的進行掃描,這是一件很費時的操作。一個更好的方法是使用Oracle提供的稱為ROWNUM的新特性,使用這個特性可以使數(shù)據(jù)庫只檢索一個啟示就可以判斷主鍵是否能與外鍵相配,這比Count(*)方法快得多,例如: SQL Using Count(*) SELECT Count(*) INTO :ll_Count ?? FROM ORDER ?? WHERE PROD_ID = :ls_CheckProd ?? USING SQLCA; IF ll_Count > 0 THEN // Cannot delete product SQL Using ROWNUM SELECT ORDER_ID INTO :ll_OrderID ?? FROM ORDER ?? WHERE PROD_ID = :ls_CheckProd ????? AND ROWNUM < 2 ?? USING SQLCA; IF SQLCA.SQLNRows <> 0 THEN // cannot delete product |