2014-05-12 6 views
0

오라클 용 dotConnect에서 Oracle MERGE 문을 사용하고 있습니다. PERSql 및 SQL Developer에서 실행되는 것처럼 MERGE 자체가 정상적으로 작동하지만 dotConnect ExecuteNoQuery는 쿼리가 성공적으로 성공한 경우 (예외가 발생하지 않음) 테이블에 업데이트 또는 삽입이 수행되지 않은 경우입니다.DevArt를 사용하여 Oracle MERGE 문이 'sticking'하지 않습니다.

나는 쿼리를 Update와 Insert로 나눌 수 있으며, 그것들은 괜찮을 것이다.

어떤 아이디어? 우리는 우리의 포럼에서 당신에게 대답 한

+0

이 친절 코드를 게시 할 수 있습니다. – user75ponic

답변

0

: 해결 방법으로 http://forums.devart.com/viewtopic.php?f=1&t=29549

, 당신은 사용해 볼 수 있습니다 :

1)이 OCI 모드;

또는

2)이 코드 :

OracleConnection conn = new OracleConnection("User Id=user;Password=pass;Server=dboracle;SID=sid;Direct=true"); 
conn.Open(); 
OracleTransaction t = conn.BeginTransaction(); 
OracleCommand comm = new OracleCommand(@"MERGE INTO ...");// place here your merge statement 
comm.Transaction = t; 
comm.Connection = conn; 
comm.ExecuteNonQuery(); 
t.Commit(); 
+1

감사합니다. 실제로 해결 방법으로 작동했습니다. –