를 삽입 재 작성 후.ORA-01036 오라클 내가 레거시 코드를 재 작업이 쿼리에 와서하고 명령
sqlDS.InsertCommand = "INSERT INTO SCHEMA.TABLE (ID, DATUM, ID_STATE, G_AM, G_VON, DATUM_BEW) " +
"VALUES (:Id_Bew, TO_DATE(':Datum', 'DD.MM.YYYY HH24:MI:SS'), 2, TO_DATE(':BewAm', 'DD.MM.YYYY'), 'ID' || :Id_Bew, TO_DATE(':Datum', 'DD.MM.YYYY HH24:MI:SS'))";
sqlDS.InsertParameters.Add("Id_Bew", ((strukturen.Login)Session["svar_bew"]).ID_Bew.ToString());
sqlDS.InsertParameters.Add("Datum", _datum);
sqlDS.InsertParameters.Add("BewAm", lbl_bew.Text);
이 문제의 테이블 :
지금이 지금까지 내 진행입니다
COLUMN | TYPE
-----------------------
ID | NUMBER
DATUM | DATE
/* Columns | ommited */
ID_STATE | NUMBER
G_AM | DATE
G_VON | CHAR(10 BYTE)
DATUM_BEW | DATE
변수가 아직 고정 된 스키마에 따라, 그래서 그들은 독일어, 결코 마음에 선언 된 이 경우에. 문제는이 새로운 코드는 이제 던졌습니다, 인 ORA-01036는 I가이 위치에 있다고 생각 :
'ID" + ((strukturen.Login)Session["svar_bew"]).ID_Bew.ToString()
- 문자열 "ID가"concatinated되어 원래의 SQL 쿼리에서>'ID' || :Id_Bew
세션 변수에서 숫자 ID를 가져옵니다. 내 의심, 내가 paramerterized 쿼리에서 잘못된 방식으로 concatinated 구문을 엉망입니다.
질문 :이 오류를 해결하고이 삽입 명령을 적절한 형식으로 가져 오려면 어떻게해야합니까?
감사합니다. 매력처럼 작동합니다. – Marco