안녕하세요! C++ 빌더 초보 고고싱입니다!
제가 DBGrid에다가 필드를 선택해 항목을 추가 시키는 프로그램을 짜려고 하는데요~
선생님께서 DBGrid1->Fields[필드번호]->Text라는 것으로 추가를 할수있다고 하십니다~
Query에서 SQL에서 INSERT를 하는것보다 쉽다고 하셔서요~
그래서 제가 이렇게 프로그램을 짜보았습니다!
AnsiString r=Socket->ReceiveText(),c;
int a=r.Pos('#'),t=0;
c=r.SubString(1,a-1);
DBGrid1->Fields[0]->Text=c;
r=r.Delete(1,a);
a=r.Pos('#');
c=r.SubString(1,a-1);
DBGrid1->Fields[1]->Text=c;
r=r.Delete(1,a);
a=r.Pos('#');
c=r.SubString(1,a-1);
DBGrid1->Fields[2]->Text=c;
r=r.Delete(1,a);
a=r.Pos('#');
c=r.SubString(1,a-1);
DBGrid1->Fields[3]->Text=c;
r=r.Delete(1,a);
원래 좀 짧게 할수있는데 사실은 에러가 나서 바꾸었어요.
그 에러가 뭐냐면은
Project Project1.exe raised exception class EDatabaseError with message 'ADOQuery1: Dataset not in edit or insert mode'.
이에요... 대충 해석해 보니까 Query가 에딧 또는 인서트 모드가 아니라서 데이터를 저장할수 없습니다 라고 해석했어요.
어떡하면 될까요? 도와주시면 감사하겠습니다!
|