2011-03-25 2 views
0

SQL select 부분에는 다음과 같은 열이 있습니다.매개 변수 C#을 사용하여 Oracle 데이터베이스에서 SQL에 추가

NVL(RISK_SASI(A.TEKLIF_NO1, A.TEKLIF_NO2, C.URUN_SIRA_NO, C.SIRA_NO, :S_DATE),0) AS RISK 

는 그리고 나는 TextBoxS_DATE 값 dinamicly 추가.

string txtBoxText1 = ((TextBox)Page.FindControl("TextBox1")).Text; 
if (txtBoxText1 != "") 
dt_stb = DateTime.Parse(txtBoxText1); 
myCommand.Parameters.AddWithValue(":S_TARIH_B", dt_stb); 

하지만 내 SQL을 위해 작동하지 않았다.

내 전체 SQL입니다.

SELECT A.HESAP_NO, A.TEKLIF_NO1 || '/' || A.TEKLIF_NO2 AS TEKLIF, A.MUS_K_ISIM AS MUSTERI, 
        B.MARKA, C.SASI_NO, C.SASI_DURUM, D.TAS_MAR, NVL(RISK_SASI(A.TEKLIF_NO1, A.TEKLIF_NO2, C.URUN_SIRA_NO, C.SIRA_NO, :S_TARIH_B),0) AS RISK, 
        NVL(MV_SASI(A.TEKLIF_NO1, A.TEKLIF_NO2, C.SIRA_NO, C.URUN_SIRA_NO, :S_TARIH_B),0) AS MV, 
        MV_K(A.TEKLIF_NO1,A.TEKLIF_NO2, :S_TARIH_B) AS KV 
        FROM S_TEKLIF A, S_URUN B, S_URUN_DETAY C, KOC_KTMAR_PR D 
        WHERE A.TEKLIF_NO1 || A.TEKLIF_NO2 = B.TEKLIF_NO1 || B.TEKLIF_NO2 
        AND A.TEKLIF_NO1 || A.TEKLIF_NO2 = C.TEKLIF_NO1 || C.TEKLIF_NO2 
        AND B.SIRA_NO = C.URUN_SIRA_NO 
        AND B.DISTRIBUTOR = D.DIST_KOD 
        AND B.MARKA = D.MARKA_KOD 
        AND B.URUN_KOD = D.TAS_KOD 

어떻게하면됩니까?

최고 감사합니다, 네르

+1

oracles adonet 인터페이스가 어떻게 작동하는지 모르지만, add 매개 변수와 쿼리 모두에서 S_TARIH_B 대신 @S_TARIH_B를 사용해보십시오. – stefan

+1

"작동하지 못했습니다" –

+1

@Johann을 추적 조회에서 분명하게 정의하십시오. – stefan

답변

2

오라클과 매개 변수를 사용하여, 당신은 대신 @ 사용해야 할 것 :. 최근 코드에서이 제네릭을 만드는 방법에 대해 질문했습니다. 당신은 그것을 보길 원할 것입니다 : DbCommand and parameterized SQL, ORACLE vs SQL Server