Q&A

  • ADO connection을 코드속에서 하는 방법
안녕하세요, 아직 해결못한 부분이 있어서, 도움을 구합니다.

ADO connection으로 엑세스의 디비인 *.mdb 파일을 하나 연결해서 화면에는
DBmemo, DBedit 로 필드들을 보여줍니다.

그런데, 원하는 내용이 무엇이냐하면,

ADO를 커넥션할때 보면, ADOconnection 컴포넌트를 더블클릭하여 DB를 연결하게 되고,
테이블을 지정하고 하면 ADOtable과, Datasource,ADOconnecton 이렇게 세가지가
서로 맞아들어가서 데이타베이스를 화면에 보여주게 됩니다.

ADO를 이런 식으로 연결하다보니까, database를 연결할때 경로가 상대경로로 지정되지 않고
절대 경로로 지정되어 버립니다.
혹시

프로그램 코드 속에서
ADO connection 을 만들어 주려면, 어떻게 해야하는지요??

누구 이 방면에 도통하신분 계시면 답좀 해주시기 바랍니다.
감사합니다.
3  COMMENTS
  • Profile
    phono 2009.09.30 22:12
    procedure DB_Open(adoConnect: TADOConnection; CONNECT_ADDR: string);
    var
    DBPW: string;
    i: integer;
    begin
    if(adoConnect.Connected) then adoConnect.Close;
    adoConnect.ConnectionString := 'Provider=SQLOLEDB.1;Persist Security Info=True;Network Address=';
    DBPW := ';User ID=' + GetDBCONNID +
    ';Initial Catalog=' + GetDBCONNDB +
    ';Password=' + GetDBCONNPW;
    adoConnect.ConnectionString := adoConnect.ConnectionString + CONNECT_ADDR + DBPW;
    try
    adoConnect.Open;
    except;
    end;
    end;
  • Profile
    김동원 2009.10.05 22:49
    대단히 감사합니다. 정말 귀한 정보 감사드립니다.
  • Profile
    phono 2009.10.05 23:54
    GetDBCONNID, GetDBCONNDB, GetDBCONNPW는 제가 임의 사용하는 함수 입니다.

    SQL서버에 등록한 ID, 생성한 DB명, PASSWORD 문자열을 대입해 주면 됩니다.
    • cdrd
    • 2009.10.14 18:51
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 아르스
    • 2009.10.13 19:57
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 초보임당
      2009.11.10 05:34
      흠...저도 그문제 때문에 골치가 좀 아팠는데요.. 리모트 데이터모듈 소스 보시면 updateRegistry ...
    • 초보임당
      2009.11.18 18:20
      리모트데이터모듈 을 등록하는 방법을 알아냈네요.. 그냥 exe 화일을 실행하지 마시고.. 실행시 실...
    • 아르스
      2009.11.27 22:51
      감사합니다 ^^ 레지스트리에 강제로 등록하는 프로그램을 만들어서 등록을 했었는데 /regserver ...
    • 강중규
    • 2009.10.13 18:49
    • 7 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2009.10.16 19:45
      TMemo 의 OnMouseUp 이벤트에서 마우스 우클릭이 일어났을때 캐럿의 위치를 저장하고, 숨겨두었던 TStri...
    • 강중규
      2009.10.17 02:39
      procedure TSangSik_Get.ContentMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState...
    • 구창민
      2009.10.20 03:21
      메모장에서 우클릭시 컨텍스트 메뉴가 안나오게 하고 싶단 의미라면.. 아래처럼 TMemo 의 ContextPopup...
    • 강중규
      2009.10.20 07:11
      감사합니다. 컨텍스트 메뉴가 안나오게 하고 싶었거든요. 그런데, 우클릭시 스트링그리드가 나오고, 그...
    • 강중규
      2009.10.20 16:18
      Content.SetSelTextBuf()를 사용하니 되내요. 그런데, 스트링그리의 목록중 하나를 했을때의 코딩 Cont...
    • 구창민
      2009.10.20 18:22
      델파이 7 버전이신가봐요? SetSelTextBuf 는 아마도 인자가 PAnsiChar 이어서 그럴겁니다. code_grid....
    • 강중규
      2009.10.21 16:37
      답변 감사합니다. 위와 같이 하니 되내요. 즐거운 하루 되세요.
    • 이강석
    • 2009.10.13 02:51
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2009.10.16 03:51
      관련 내용을 팁게시판에 올려둘께요 참고하시기 바랍니다. 그럼 즐거운 프로그래밍 하시구요~
    • 백록화
      2009.10.13 18:55
      해당 url을 호출하고 완료되는 시점을 확인하실려는것인가요? 아님 그 결과값을 알고자 하시는것인지?? ...
    • ▷◁병부잡이
      2009.10.13 19:52
      var s : string; begin s := IdHTTP1.Get('http://222.122.111.123/pb_reg.jsp?aid=abc&pwd=1234'...
    • phono
      2009.10.10 02:50
      단순히 시간을 클라이언트에 set 하는 방법은 NET TIME \\서버명 /SET /YES 로 하시면 되는데 ...
    • 윤중현
      2009.10.10 03:19
      와우~ 저희 회사에도 도움이 되겠는데요~ 저도 플리즈~~ 헬 ~~ 프~~ 미~~ ^^;; 도움이 안되는 댓글 죄송...
    • 강중규
    • 2009.10.07 22:02
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 박종철
    • 2009.10.07 19:19
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 박종철
      2009.10.07 19:21
      어이쿠 자답입니다. ISNULL에다가 ''만 넣었네요... ㅠ_ㅠ 왜 이런 실수를 했을까... ''''로 변경...
    • 강중규
    • 2009.10.06 20:22
    • 12 COMMENTS
    • /
    • 0 LIKES
    • 홍성락
      2009.10.06 23:14
      '스트링 그리드 콤보 박스' 검색해도 많이 나오는데요....자료실에 제가 예전에 올린 테스트 소스도 있습...
    • 강중규
      2009.10.07 05:45
      답변 감사합니다. 그런데, 버튼을 하나 만들고, 버튼을 누르면 쇼메시지에 보이게는 어떻게 하죠. show...
    • 홍성락
      2009.10.07 18:20
      객체를 Tcombobox형으로 해서 읽어보세요 showmessage( Tcombobox(test_gred.objects[1,test_gred.row])...
    • 강중규
      2009.10.07 18:54
      감사합니다. 그건 해결을 했습니다. 그런데, 콤보박스의 목록중 하나를 선택하면, 그리드의 콤보박스...
    • 홍성락
      2009.10.07 22:18
      조금 수정했습니다 1. 한번만 생성되도록 2. 동적 콤보박스 생성시 부모가 윈도우 클래스냐에 따라 이...
    • 강중규
      2009.10.08 05:24
      답변 감사합니다. procedure TForm1.MyComboBoxChange(Sender: TObject); begin test_grid.Cell...
    • 홍성락
      2009.10.08 05:54
      스트링 그리드의 OnClick에서 처리하신다고 하지 않나요. OnClick이라면 MyComboBoxChange 이후 사라질거...
    • • • •
    • 최용일
      2009.10.06 04:18
      그냥 정수로 바꾸시면 될듯하네요. ...+#$30+#$ㅁㅁ+#$67+... ...+#$30+Char(StrToInt(Edit1.Text))+...
    • 오델로
      2009.10.06 17:39
      답변과 관심 감사드리구요 제가 생각하는건 만약 13을 입력하면 1과3으로 분리한후 ...+#$ㅅㅅ+#$...
    • 홍성락
      2009.10.06 21:01
      # 는 ASC코드로, $ 는 16진수를 10진수로.... #$20는 $20(16진수 20을 10진수값 32)의 아스키코드...
    • 오델로
      2009.10.07 03:27
      최용일님 말씀처럼 해보면 ...+#$30+Char(StrToInt(Edit1.Text))+#$67+... 요부분에서 [Pascal ...
    • 최용일
      2009.10.07 03:59
      1의 헥사값 31이 mm에들어가고 3의 헥사값 34이 ss자리에 들어가도록 하고싶습니다.... 위 질문대로라...
    • 홍성락
      2009.10.07 04:09
      mm은 Char형이구요. 1과 3의 헥사를 구해 넘긴다면 Chr와 StrToint와 '$' + IntToHex() 등등을 사용하겠...
    • 김홍균
      2009.10.07 14:27
      보낼 때 var ss : word; H_ss, L_ss : word; begin ss :=strtoint('$'+(Edit1.Text)); // ...
    • • • •
    • 배경
    • 2009.10.02 00:59
    • 0 COMMENTS
    • /
    • 0 LIKES
    • Elpira
    • 2009.10.01 21:13
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 정경철
    • 2009.10.01 16:34
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 오병주
      2009.10.14 01:55
      미들웨어는 그냥 CORBA로 사용해도 충분히 될것은데요 그리고 데몬프로그램은 소켓통신을 이용하는게 제...
    • cdrd
    • 2009.10.01 01:07
    • 1 COMMENTS
    • /
    • 0 LIKES
    • cdrd
      2009.10.01 20:15
      아래와 같이 함수를 수정하였습니다. 결국 유니코드 문제였습니다. <!--CodeS--> function IP...
    • 김동원
    • 2009.09.30 08:11
    • 3 COMMENTS
    • /
    • 0 LIKES
    • phono
      2009.09.30 22:12
      procedure DB_Open(adoConnect: TADOConnection; CONNECT_ADDR: string); var DBPW: string; i...
    • 김동원
      2009.10.05 22:49
      대단히 감사합니다. 정말 귀한 정보 감사드립니다.
    • phono
      2009.10.05 23:54
      GetDBCONNID, GetDBCONNDB, GetDBCONNPW는 제가 임의 사용하는 함수 입니다. SQL서버에 등록한 ID, 생...
    • 한만희
    • 2009.09.30 02:22
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 엽기블랙
      2009.09.30 18:59
      DoubleBuffered := TRUE; 델파이에서는 하시면 대부분 해결됩니다.