Q&A

  • 동적 데이타베이스, 쿼리 콤포넌트 사용
데이타베이스와 쿼리를 동적으로 생성하여 사용하려 합니다.
다음과 같이 코딩을 하였더니 다음의 오류가 나왔습니다.

UnKnown user name or password
unavailable database
Alias: avc_test. Process. Use Step or Run to continue.

동적으로 생성한 데이타베이스 콤포넌트에서 쿼리로 연결이 안되는 것 같습니다.
고수님들의 답변을 부탁드립니다.

var
   i: integer;
   Query_1 : TQuery;
   Database_1 : TDatabase;
begin
   Database_1 := TDatabase.Create(nil);
   Query_1    := TQuery.Create(nil);
  
   try
      Database_1.LoginPrompt  := False;
      Database_1.Params.Clear;
      Database_1.DatabaseName := 'abc_test';
      Database_1.AliasName    := 'test_db';
      Database_1.Params.Add('SERVER NAME=C:\db\interbase_test.GDB');
      Database_1.Params.Add('USER NAME=SYSDBA');
      Database_1.Params.Add('PASSWORD=masterkey');
      Database_1.Connected := True;

      with Query_1 do
      begin
         DatabaseName :=  'abc_test';
         Close;
         SQL.Clear;
         SQL.Add('select * from CLASS_CODE_ZIP where DONG like ''신사%'' ');
         Open;
        
         while not eof do
         begin
            s_Code  := intToStr(FieldByName('CODE').AsInteger);
            s_GuGun := FieldByName('GUGUN').AsString;
            s_Dong  := FieldByName('DONG').AsString;                    
            Memo1.text := (s_Code + s_GuGun + s_Dong);
            Next;
         end;// while
      end;//with
   finally
      Query_1.Free;
      Database_1.Free;
   end;
1  COMMENTS
  • Profile
    유동기 2004.01.30 01:01

            //동적생성한 Query에 name은 Query_1이므로
               이부분을 With Query_1 do
               이렇게 바꿔야 할 듯 합니다.