|
답변 감사합니다.. 우선 그렇게 처리해서 쓰고 있긴 합니다만..
---------------------------------------------------------------------------
: query->Close();
: query->SQL->Clear();
: query->SQL->Add("Update SHAPE set ORIGIN_X=100 where id='M003'");
: query->SQL->Add("Update SHAPE set ORIGIN_X=0 where id='M001'");
: query->ExecSQL();
---------------------------------------------------------------------------
이 경우는 왜 에러가 나는 걸까요? MS-SQL 서버의 경우 문제없이 작동하는 코드인데..
즉 여러 Update문을 한 번에 실행하는 것이 가능할 것으로 생각되는데요..
왜 오라클 서버에서는 "Key Violation ORA-00933 SQL Command not properly ended"에러가 발생할까요
답변 부탁드려요~~~~
장성호 님이 쓰신 글 :
: 두개의 Query 문이 동시에 안되나보네요
:
: query->Close();
: query->SQL->Clear();
: query->SQL->Add("Update SHAPE set ORIGIN_X=100 where id='M003'");
: query->ExecSQL();
: query->SQL->Clear(); //==> 요기 한줄 추가하세요
: query->SQL->Add("Update SHAPE set ORIGIN_X=0 where id='M001'");
: query->ExecSQL();
:
: query->ExecSQL() 한뒤에도 query->SQL에는 이전에 sql문이 남아있는가 봅니다.
: clear해주고 다시 새로운 sql문을 add한후에 ExecSQL()하시면 되것 같네요
:
: 그럼....
:
:
:
: 류호열 님이 쓰신 글 :
: : 안녕하세요.. 도저히 모르겠습니다. 도와주세요..
: :
: : C Builder 5 사용하고 있구요.. ODBC로 Oracle 연결해서 구현하고 있습니다
: :
: : 그런데 Update문을 여러 개 TQuery에 추가하고 한 번에 실행하려고 하면 두 번째 Update 문부터 항상
: :
: : Key Violation ORA-00933 SQL Command not properly ended
: :
: : 에러가 발생합니다..
: :
: : 코드는 다음과 같습니다.
: : -----------------------------------------------------------------------------------------
: :
: : query->Close();
: : query->SQL->Clear();
: : query->SQL->Add("Update SHAPE set ORIGIN_X=100 where id='M003'");
: : query->SQL->Add("Update SHAPE set ORIGIN_X=0 where id='M001'");
: : query->ExecSQL();
: :
: : -----------------------------------------------------------------------------------------
: :
: :
: :
: : 다음과 같이 실행하면 첫 Update 문은 실행되고 두 번째 Update문에서 같은 에러가 발생합니다.
: : -----------------------------------------------------------------------------------------
: :
: : query->Close();
: : query->SQL->Clear();
: : query->SQL->Add("Update SHAPE set ORIGIN_X=100 where id='M003'");
: : query->ExecSQL();
: : query->SQL->Add("Update SHAPE set ORIGIN_X=0 where id='M001'");
: : query->ExecSQL();
: :
: : -----------------------------------------------------------------------------------------
: :
: : 무더운 날씨지만 즐거운 하루 보내시구요..
: :
: : 답 부탁드리겠습니다~
|