C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[41831] 답변 감사드립니다...
최진호 [] 814 읽음    2005-09-07 13:27
smleelms 님이 쓰신 글 :
: 1. DBGrid 같은 경우에는 DataSource에서 지정된 내용에 관해 display가 되는걸로 알고 있습니다. 따라서 2가지 방법이 가능할 것 같네요.
:
: 먼저 DataSource에 연결된 DB에 Query를 이용하여 새로운 필드를 추가하신 후에 DataSource를 갱신하시면 됩니다.
: 또는 미리 DB에 해당 필드를 만들어 놓으신 후에 DBGrid의 Columns 속성을 이용하셔서 등록은 해놓으신 후에 해당 column의 Visible 속성을 필요에 따라 핸들링하시면 될듯합니다.
:
: 2. 일반적으로 DB엔진에서 지원이 되는 사항이니, 당연히 Query로 가능합니다. 해당 DB마다 명령어의 차이가 조금씩은 있을 수 있겠지요.. 저는 mdb 밖에 해보지 못해서..  일단 access의 mdb는 됩니다. ^^;;
:
: 제가 사용한 허접소스입니다.. 참고가 되시길 바랍니다.
:
: //---------------------------------------------------------------------------
: void __fastcall TFormMain::btnMakeTable1Click(TObject *Sender)
: {
:     Screen->Cursor = crHourGlass;
:
:     // Intermediate Microsoft Jet SQL for Access 2000
:     // http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnacc2k/html/acintsql.asp?_r=1
:
:     AnsiString strQry;
:
:     ADOQuery1->Close();
:
:     strQry  = "CREATE TABLE Table1 (";
:     strQry += "ID COUNTER PRIMARY KEY, ";
:     strQry += "Model TEXT(30) WITH COMPRESSION UNIQUE, ";
:     strQry += "Comment TEXT(100) WITH COMPRESSION";
:     strQry += ")";
:
:     ADOQuery1->SQL->Clear();
:     ADOQuery1->SQL->Text = strQry;
:     ADOQuery1->ExecSQL();
:     Application->ProcessMessages();
:
:     Screen->Cursor = crDefault;
: }
: //---------------------------------------------------------------------------
:
: void __fastcall TFormMain::btnMakeTable2Click(TObject *Sender)
: {
:     Screen->Cursor = crHourGlass;
:
:     // Intermediate Microsoft Jet SQL for Access 2000
:     // http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnacc2k/html/acintsql.asp?_r=1
:
:     AnsiString strQry;
:
:     ADOQuery1->Close();
:
:     strQry  = "CREATE TABLE Table2 (";
:     strQry += "Model TEXT(30) WITH COMPRESSION, ";
:     strQry += "Phase TEXT(10) WITH COMPRESSION, ";
:     strQry += "Data_DateTime DATETIME, ";
:     strQry += "Data_Short SHORT, ";
:     strQry += "Data_Long LONG, ";
:     strQry += "Data_Single SINGLE, ";
:     strQry += "Data_Double DOUBLE, ";
:     strQry += "Data_Binary BINARY(510), ";
:     strQry += "Comment MEMO WITH COMPRESSION";
:     strQry += ")";
:
:     ADOQuery1->SQL->Clear();
:     ADOQuery1->SQL->Text = strQry;
:     ADOQuery1->ExecSQL();
:     Application->ProcessMessages();
:
:     ADOQuery1->Close();
:     // index(중복가능) 속성 추가
:     strQry  = "CREATE INDEX idx_model ON Table2 (Model)";
:     ADOQuery1->SQL->Text = strQry;
:     ADOQuery1->ExecSQL();
:     Application->ProcessMessages();
:     strQry  = "CREATE INDEX idx_phase ON Table2 (Phase)";
:     ADOQuery1->SQL->Text = strQry;
:     ADOQuery1->ExecSQL();
:     Application->ProcessMessages();
:     strQry  = "CREATE INDEX idx_datetime ON Table2 (Data_DateTime)";
:     ADOQuery1->SQL->Text = strQry;
:     ADOQuery1->ExecSQL();
:     Application->ProcessMessages();
:
:     Screen->Cursor = crDefault;
: }
: //---------------------------------------------------------------------------
:
:
:
: 최진호 님이 쓰신 글 :
: : 요듬에 DB 관련 프로그램을 짜고 있는데
: :
: : 처음 이라 무지 힘드네요..
: : 아래 열거 사항중에서 builder 에서 지원하는것은 어떤것이 있나요
: :
: :
: : 1. DBgrid 에 필드를 추가 할수 있는지(예 >DB에서 찾은 단어의 갯수를 카운트하고 그 숫자를  DBgrid 에 새로 column을 만들고 붙일수 있는지  )
: :
: : 2. ADOQuery의 내용을 새로운 table을 만들어서 저장할수 있는지
: :
: :
: : DBgrid 나 ADOQuery의 내용을 하나하나씩 지정을 해서 table로 생성을 해야만 하는지
: :
: : 하나하나씩 지정하면 할수는 있을듯 한데 너무 삽질같은데
: :
: : 아시면 간단히 방법이라 알려주세요!!!
: :
: : 지금 까지 내용을 읽어 주셔서 감사합니다..
: :
: :


먼저 답변을 해주셔서 감사드립니닫..

1번 column 추가는 단지 DBgrid에 추가하는것이고 DB에 저장되면 안되거든요..^^;;

2번 query 저장은 table에서 불러오기처럼 단지 한줄이나 두줄코드(욕심인가요 너무 몰라서 ㅋㅋ) 가능한것을 알려고  한것인데..그냥간단히 property 난 event 를 통해서 가능한지를 알고 싶었습니다..

만들다가 삽질하고 싶은 생각인 없어서

다시 하번 답변해 주신것에 대해서 감사드립니다..

혹시 저것 말고 다른 방법이 있으시면 알려주세요..






: :
: :

+ -

관련 글 리스트
41822 DBgrid 관련 질문 최진호 868 2005/09/07
41828     Re:DBgrid 관련 질문 smleelms 1097 2005/09/07
41831         답변 감사드립니다... 최진호 814 2005/09/07
41833             Re:답변 감사드립니다... smleelms 829 2005/09/07
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.