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

델파이 Q&A
Delphi Programming Q&A
[15793] 안녕하세요 다시 질문하러 왔습니다.. ㅎㅎ;;
안녕하세요 [] 1696 읽음    2016-09-26 09:49
..하나가지고 몇일을 끄는건지 모르겟네요... 델마당과 델파이포럼 두개를 왔다갔다하면서 이것저것 배우고있는데..

잘모르겟습니다... 응용이라고해야될까요 책을 읽어서 이론을 습득했고 실습을 했지만.. 아무래도 제가 하는거랑은 좀 다른거같아서 그런지 써먹질 못하겟네요...

소스전문과 제가 주석을 단것, 이미지스크린샷 두장을 같이 올리겠습니다..










unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, ADODB;


type
  TForm1 = class(TForm)
    DSrcGICS: TDataSource;
    AdoQryGICS: TADOQuery;
    CnnSV: TADOConnection;
    Wcode: TEdit;
    Button1: TButton;
    WName: TEdit;
    AdoQryGICSpid: TStringField;
    AdoQryGICSkor_name: TStringField;
    procedure Button1Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure WcodeKeyPress(Sender: TObject; var Key: Char);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  ADOQry : TADOQuery;
  SSQL : string;                                                                      //여기까지 선언부, 두개의 에디트박스와 한개의 버튼,
                                                                                           //ADO Conectio, query, source 등으로 구성되어있습니다
                                     
implementation

{$R *.dfm}



procedure TForm1.Button1Click(Sender:TObject);
var
ADOTemp : TADOQuery;
sWCode, sWName : String;
  MyClass: TComponent;

begin
while not AdoQryGICS.Eof do begin
  ADOTemp := TADOQuery.Create(Self);
  AdoQryGICS.Next;                                                                               //adoquery.next입니다, next가 한 row씩
                                                                                                           //검사해나가면서 해당되는 값을 찾아
                                                                                                           //나간다는 것으로만 알고있는데 코딩을 제대로한건질                                                                                                            // 모르겟네요
  try
    ADOTemp.close;
    ADOTemp.ConnectionString :=  AdoQryGICS.ConnectionString;                //connectionstring이 연결된 문자열을 받는건
                                                                                                            //알겠는데.. 초기화를 목적으로하는건가요?

    ADOTemp.SQL.Clear;                                                                          //초기화
    ADOTemp.SQL.ADD('SELECT PID,kor_name FROM 회사.db where kor_name=:kor_name');    //쿼리문이 틀린건가요...
    ADOTemp.Parameters.ParamByName('kor_name').Value := Wcode.Text;   // <----------------------  error
    ADOTemp.Open;

  finally
    ADOTemp.Free;
  end;

  //TDBedit -data source -data field 를 사용하면 바로 해결...?
end;
end;

// 재미로 넣어봣습니다  신경쓰지않으셔도됩니다
procedure TForm1.WcodeKeyPress(Sender: TObject; var Key: Char);
begin
    // 숫자만 입력 가능하게함,
  if (Key in ['0'..'9']) or (Key = #8) then    //#8  = bs, BackSpace
else
    Key := #0; //#0 = null을 의미
    end;



procedure TForm1.FormShow(Sender: TObject);
begin
CnnSV.Connected := True;                                            //TADO Conecction  을 연결했을시 실행되게,
AdoQryGICS.Active := True;                                          //ADO Query 연결시 실행
end;

end.


//개요
// EDIT 1에 번호를 입력하면, EDIT2에 사람 이름이 뜨게 한다.
// SQL문은 (회사db) 로부터 가져온다,
//예시 회원번호는 2830, 사원이름은 최재영, 따라서 EDIT1에 2830을 입력하고 확인을 누르면 EDIT2에  (익명)이 뜬다

// 경과
// tadoConnection 에 db를 연동시킨뒤, query를 통해 데이터를 연결, source를 통해 뿌려준다  (0)


//현재 두번째사진, kor_name 이라는 값이 없다고 나오는 지점까지갔습니다, 의아한것은 데이터베이스에 kor_name 이라는 컬럼이없는것도아니고, 델파이에서 db 연결을 잘못한것도 아닙니다, 쿼리문도 틀리지않았다고 생각하는데... 뭐가 문제인지 파악하기가 힘드네요

+ -

관련 글 리스트
15793 안녕하세요 다시 질문하러 왔습니다.. ㅎㅎ;; 안녕하세요 1696 2016/09/26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.