Oracle數據庫中sql查詢很快,但在程序中查詢較慢的原因和解決方法


代碼如下 

            string sql = "SELECT * FROM LIS_V_LABTESTSAMPLE WHERE PATIENT_ID=:P";
            HlsAccess.CommandText = sql;
            HlsAccess.Parameters.Clear();
            HlsAccess.Parameters.Add(":P", Oracle.DataAccess.Client.OracleDbType.NVarchar2).Value = patId;

這里指定了參數的類型為Nvarchar2,但是數據庫字段類型是Varchar2,這時就會造成字段類型錯誤導致了表掃描,最后導致查詢速度慢。 

解決方案就是參數改成Varchar2即可。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM