하안인 님이 쓰신 글 :
: : : 알려주신대로 간단히 프로그램을 만들어서 테스트 해 보았습니다.
: : : 그래도 a 피씨에서 입력한 값을 b에서 읽어 들이려면 데이베이스의 connected를
: : : 끊고 다시 연결해야 보여짐니다.
: : :
: : : 제가 뭐 잘못한거라도 있나요.
: : : 프로그램에 IBDatabase,IBTracsaction,IBTable을 하나 올려놓고
: : : 추가버튼을 누르면
: : : IBTable1->Open();
: : : IBTable1->Insert();
: : : IBTable1->FieldByName("t1")->AsString = Edit1->Text;
: : : IBTable1->FieldByName("t2")->AsString = Edit2->Text;
: : : IBTable1->Post();
: : : // IBDatabase1->ApplyUpdates(0);
: : :
: : : IBTransaction1->CommitRetaining();
: : :
: : : 으로 설정을 했습니다. 그리고 나서 실행파일을 두번 실행하고
: : : 한 군데서 추가버튼을 누르고 다른 쪽에서 테이블만 닫 았다 열어도
: : : 보이질 않습니다.
: : : 다른 문제가 있나요.
: :
: : 제가 빠트린 내용이 하나 있네요.
: :
: : IBTransaction1 객체에 마우스 오른쪽 버튼을 눌러
: : [Transaction Editor...]를 선택하신 후,
: : [Transaction Property]를 [Read Committed]로 설정해보세요.
: :
: : MIDAS/DataSnap과도 관계가 있을지도 모르지만 그 부분은 제가 전혀 모릅니다. -_-;;
:
: midas를 이용하지않고 그냥 인터베이스 컴포넌트만 가지고 알려주신대로
: 프로그램을 해서 실행파일을 두번 실행시켰습니다.
: 그런데도 한 프로그램에서 추가를 한것이 다른 프로그램에는 적용이 안되는 데요.
: 한 프로그램에서 추가한것은 그 프로그램이 종료된 후 다시 프로그램을 띄워야
: 추가된 내용이 보여집니다.
: 계속 귀찮게만 해드리는 것 같아서 죄송합니다.
위의 프로그램에서는 해결한것 같습니다.
추가한후 IBTransaction의 property만을 변경한 것으로는 되지 않고
님이 가르쳐주신 대로 하고 다른 프로그램에서 refresh하니 작동됩니다.
감사합니다.
|