Q&A

  • 이미지 field에 파일 입력하는 방법[긴급]
현재 sysbase를 사용하고 있습니다.

이미지 field에 파일을 등록하고 싶은데 어떻게 해야할지를 몰라서

글을 올립니다.

object를 사용하지 않고 명령문을 사용해서 처리하는 방법을 가르쳐주세요



txt파일이나 excel파일을 db에 저장하고 읽고 하는 것입니다.



그리고 등록한 데이타를 읽어서 처리하는 방법도 알려주십시요



매우 긴급한 일이라 빠른 답변을 부탁합니다.



부탁드립니다.

4  COMMENTS
  • Profile
    유민호 1999.04.30 02:38
    소켓을 이용하는 프로그램을 만들고 있습니다.

    서버프로그램에 있는 한개의 TStoredProcedure를

    공통적으로 사용하려하는데요...



    클라이언트프로그램을 실행하면 다음과 같은 에러가 납니다.

    "Variant does not reference an automation object."

    에러메세지의 의미와 해결방법을 모르겠습니다.



    한수 부~탁 해요

  • Profile
    김영대 1999.07.14 04:41
    안류진 께서 말씀하시기를...

    > 현재 sysbase를 사용하고 있습니다.

    > 이미지 field에 파일을 등록하고 싶은데 어떻게 해야할지를 몰라서

    > 글을 올립니다.

    > object를 사용하지 않고 명령문을 사용해서 처리하는 방법을 가르쳐주세요

    > txt파일이나 excel파일을 db에 저장하고 읽고 하는 것입니다.

    > 그리고 등록한 데이타를 읽어서 처리하는 방법도 알려주십시요

    > 매우 긴급한 일이라 빠른 답변을 부탁합니다.

    > 부탁드립니다.



    SYSBASE는 BLOB 형 필드를 어떻게 정의하는지 모르겠지만

    Table에 BLOB형 필드를 만들고 이곳에 TTable로 저장하고

    TQuery 로 조건을 주어서 읽어오는 예제입니다



    unit Unit1;



    interface



    uses

    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

    DBTables, Db, StdCtrls;



    type

    TForm1 = class(TForm)

    B_BlobToFile: TButton;

    B_FileToBlob: TButton;

    B_DeleteBlob: TButton;

    Database1: TDatabase;

    Query1: TQuery;

    Table1: TTable;

    E_FileName: TEdit;

    procedure B_BlobToFileClick(Sender: TObject);

    procedure B_FileToBlobClick(Sender: TObject);

    procedure B_DeleteBlobClick(Sender: TObject);

    private

    { Private declarations }

    public

    { Public declarations }

    end;



    var

    Form1: TForm1;



    implementation

    {$R *.DFM}





    procedure TForm1.B_BlobToFileClick(Sender: TObject);

    var

    FS_Write: TFileStream;

    begin

    try

    FS_Write := TFileStream.Create(E_FileName.Text, fmCreate);

    Query1.Close;

    Query1.SQL.Clear;

    Query1.SQL.Add(' SELECT BLOBFIELD ');

    Query1.SQL.Add(' FROM BLOBTABLE ');

    Query1.SQL.Add(' WHERE FILENAME = '''+E_FileName.Text+''' ');

    Query1.Open;

    TBlobField(Query1.FieldByName('BLOBFIELD')).SaveToStream(FS_Write);

    // 위의 TFileStream을 쓰지않고 직접 저장하려면 아래의 SaveToFile을 쓰십시요

    // TBlobField(Query1.FieldByName('BLOBFIELD')).SaveToFile(E_FileName.Text);

    Query1.Close;

    finally

    FS_Write.Free;

    end;

    end;



    procedure TForm1.B_FileToBlobClick(Sender: TObject);

    begin

    // Table1.TableName 프로퍼티는 'BLOBTABLE'이 되겠죠

    Table1.Open;

    Table1.Insert;

    Table1.FieldByName('FILENAME').AsString := E_FileName.Text;

    TBlobField(Table1.FieldByName('BLOBFIELD')).LoadFromFile(E_FileName.Text);

    Table1.Post;

    Table1.Close;

    end;



    procedure TForm1.B_DeleteBlobClick(Sender: TObject);

    begin

    Query1.Close;

    Query1.SQL.Clear;

    Query1.SQL.Add(' DELETE FROM BLOBTABLE ');

    Query1.SQL.Add(' WHERE FILENAME = '''+E_FileName.Text+''' ');

    Query1.ExecSQL;

    end;



    end.



  • Profile
    saxoji 1999.05.01 00:41
    2-tier or 3-tier 환경으로의 programing시

    자료형 중 variant가 있는 것이 아닌지?

    이경우는 olevariant자료형을 사용해야 하거든요,,,,

  • Profile
    신인재 1999.04.30 20:39
    음냐...글쎄요 이런 문제는 서버쪽을 유심히 살펴 보아야 할꺼 같은데요..

    우선 서버쪽 프로그램을 고친후에 컴파일(Build all)을 안해 주셨다든가

    컴파일을 제대로 했으나 서버쪽에 등록되지 않은 데이타 모듈을

    엑세스 하고자 했다던가 아님 컴파일을 제대로 했으나

    그 프로그램이 OLE automation server 로 등록이 되지 않았을 경우입니다.

    마지막의 경우 Type Labrary에서 한번 확인해 보시고요..



    물론 기본적인 얘기가 되겠으나 실제로 코딩하는 입장에서는

    빠뜨리고 지나갈 수가 있지요...



    그럼 이만





    유민호 wrote:

    > 소켓을 이용하는 프로그램을 만들고 있습니다.

    > 서버프로그램에 있는 한개의 TStoredProcedure를

    > 공통적으로 사용하려하는데요...

    >

    > 클라이언트프로그램을 실행하면 다음과 같은 에러가 납니다.

    > "Variant does not reference an automation object."

    > 에러메세지의 의미와 해결방법을 모르겠습니다.

    >

    > 한수 부~탁 해요





    • sunhee
    • 1999.07.13 20:13
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.07.13 22:12
      Component에서 Import ActiveX를 하셔서 Microsoft Internet Controls를 임포트하시면 Internet Explorer ...
    • sunhee
      1999.07.13 22:26
      저도 그걸 이용해보려 했는데 팝업메뉴 조절이 안되더군요. 제 나름대로의 팝업메뉴를 만들 수 있는 방법...
    • 유민호
    • 1999.04.30 02:38
    • 2 COMMENTS
    • /
    • 0 LIKES
    • saxoji
      1999.05.01 00:41
      2-tier or 3-tier 환경으로의 programing시 자료형 중 variant가 있는 것이 아닌지? 이경우는 olevariant...
    • 신인재
      1999.04.30 20:39
      음냐...글쎄요 이런 문제는 서버쪽을 유심히 살펴 보아야 할꺼 같은데요.. 우선 서버쪽 프로그램을 고친후...
    • 이정욱
      1999.07.13 22:10
      TBitBtn은 색깔을 바꿀 수 없습니다. 색깔을 바꿀수 있는 컴포넌트가 한델(http://www.delphi.co.kr)자...
    • 강신구
    • 1999.04.30 22:35
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.05.01 00:00
      음냐 제가 잘못 이해 했군요.... 일딴 Enabled를 True로 주고 Options의 goEditing은 false 로 주세...
    • 1999.07.13 19:44
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.07.13 23:43
      쩝....감사를 표하시니...좀 송구스럽네요....^^; 음...님께서 말하신 폼을 스트링으로 콜은 하는 것은 ...
    • 강지영
    • 1999.04.30 07:26
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 김은석
      1999.07.13 19:29
      Ms-Access DB를 사용하고 있습니다. Table 이름을 Rename 시키고 싶은데...DbiRenameTable은 사용할 수 없...
    • 강지영
      1999.04.30 22:09
      강지영 wrote: > 그리드에 자리수 콤마찍기를 가르쳐주신 함수를 사용해서 적용을 했습니다. > DBgridDra...
    • 글쎄요.
      1999.04.30 23:29
      제가 자세히 안 보고 답변을 했네요. 필드명으로 걸러내실려면 DBgridDrawDataCell event에서가 아니라 DB...
    • 글쎄요.
      1999.04.30 19:26
      강지영 wrote: > 그리드에 자리수 콤마찍기를 가르쳐주신 함수를 사용해서 적용을 했습니다. > DBgridDra...
    • 박수연
    • 1999.07.13 19:17
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.07.14 13:46
      쩝... 한번 해봤는데 역시 안잡히던군요.. 후후.. 하도 신기해서(?) 될때까지 해봤습니다. 코딩은 안해주...
    • 배재민
    • 1999.04.30 20:55
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 이일수
      1999.07.13 19:04
      오늘도 무척이나 덥게 느껴지는군요!!!~ 헥헥~~~ AVI file을 편집하고 싶습니다. 어떤 내용이냐면 AVI...
    • 신인재
      1999.04.30 21:37
      음냐.... 일딴 LAN환경이라면 하드웨어적인 환경은 충족이 된상태이고 마이다스를 이용하신다면 소...
    • 배재민
      1999.04.30 22:00
      Delphi4를 이용하는데 BDE dirIDPROV32.DLL이 존재하지 않습니다. 위의 파일은 어떻게 해야 얻을 수 ...
    • 신인재
      1999.04.30 23:13
      분명히 BDE dirIDPROV32.DLL 은 있어야 합니다. 델파이 CD로 BDE부분만 다시 깔아 보세요... 하이텔 Vtoo...
    • 강신구
    • 1999.04.30 22:35
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 김정원
      1999.07.13 18:00
      Dbgrid에서 MultiSelect를 해서 이 그 해당 레코드의 한 필드값을 파라메타로 이용하요 프로그램을 Call 하...
    • 신인재
      1999.05.01 00:00
      음냐 제가 잘못 이해 했군요.... 일딴 Enabled를 True로 주고 Options의 goEditing은 false 로 주세...
    • 궁금이
      1999.07.13 18:05
      김정원 께서 말씀하시기를... > Dbgrid에서 MultiSelect를 해서 이 그 해당 레코드의 한 필드값을 파라메...
    • 김종환
    • 1999.07.13 16:03
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 노력하는이
      1999.07.13 19:30
      김종환 께서 말씀하시기를... > 책을 보다가, 팁을 보다가, 공개 소스를 보다가 nil 이라는 신택스가 나오...
    • 김종환
    • 1999.07.13 12:03
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 강지영
      1999.04.30 07:26
      그리드에 자리수 콤마찍기를 가르쳐주신 함수를 사용해서 적용을 했습니다. DBgridDrawDataCell event에 ...
    • 강지영
      1999.04.30 22:09
      강지영 wrote: > 그리드에 자리수 콤마찍기를 가르쳐주신 함수를 사용해서 적용을 했습니다. > DBgridDra...
    • 글쎄요.
      1999.04.30 23:29
      제가 자세히 안 보고 답변을 했네요. 필드명으로 걸러내실려면 DBgridDrawDataCell event에서가 아니라 DB...
    • 글쎄요.
      1999.04.30 19:26
      강지영 wrote: > 그리드에 자리수 콤마찍기를 가르쳐주신 함수를 사용해서 적용을 했습니다. > DBgridDra...
    • 문창완
    • 1999.07.13 08:02
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 델초보
      1999.07.13 19:03
      문창완 께서 말씀하시기를... > MDB를 사용해서 네트웍상에서 트랜잭션처리를 하고싶은데 가능할까요... ...
    • 배재민
    • 1999.04.30 20:55
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.04.30 21:37
      음냐.... 일딴 LAN환경이라면 하드웨어적인 환경은 충족이 된상태이고 마이다스를 이용하신다면 소...
    • 배재민
      1999.04.30 22:00
      Delphi4를 이용하는데 BDE dirIDPROV32.DLL이 존재하지 않습니다. 위의 파일은 어떻게 해야 얻을 수 ...
    • 신인재
      1999.04.30 23:13
      분명히 BDE dirIDPROV32.DLL 은 있어야 합니다. 델파이 CD로 BDE부분만 다시 깔아 보세요... 하이텔 Vtoo...
    • 이광연
    • 1999.07.13 07:49
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 손창근
      1999.07.13 19:00
      안녕하세요.. 오공이 입니다.. 이광연님의 Sql문을 보니 and 부분이 잘못되어 있는거 같네요.. 제 생각으...
    • 김도진
    • 1999.07.13 05:32
    • 5 COMMENTS
    • /
    • 0 LIKES
    • 배재민
      1999.04.30 20:55
      3계층 데이터베이스 응용프로그램을 작성하였습니다. 응용프로그램 서버와 클라이언트를 작성하고 나서 ...
    • 구창민
      1999.07.13 08:53
      김도진 께서 말씀하시기를... > 안녕하세요 정말종은 사이트 같습니다. > NT4.0을 쓰구요 LAN으로컴퓨터3...
    • 신인재
      1999.04.30 21:37
      음냐.... 일딴 LAN환경이라면 하드웨어적인 환경은 충족이 된상태이고 마이다스를 이용하신다면 소...
    • 배재민
      1999.04.30 22:00
      Delphi4를 이용하는데 BDE dirIDPROV32.DLL이 존재하지 않습니다. 위의 파일은 어떻게 해야 얻을 수 ...
    • 신인재
      1999.04.30 23:13
      분명히 BDE dirIDPROV32.DLL 은 있어야 합니다. 델파이 CD로 BDE부분만 다시 깔아 보세요... 하이텔 Vtoo...
    • 박성훈
    • 1999.07.13 05:32
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 조복기
      1999.07.13 18:42
      안녕하세요..조복기입니다.. 당연히 마스터 디테일로 나누어서 관리하시는게 편하실겁니다. 관리하기...
    • 배재민
    • 1999.04.30 20:55
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.04.30 21:37
      음냐.... 일딴 LAN환경이라면 하드웨어적인 환경은 충족이 된상태이고 마이다스를 이용하신다면 소...
    • 배재민
      1999.04.30 22:00
      Delphi4를 이용하는데 BDE dirIDPROV32.DLL이 존재하지 않습니다. 위의 파일은 어떻게 해야 얻을 수 ...
    • 신인재
      1999.04.30 23:13
      분명히 BDE dirIDPROV32.DLL 은 있어야 합니다. 델파이 CD로 BDE부분만 다시 깔아 보세요... 하이텔 Vtoo...
    • 장철진
    • 1999.07.13 05:15
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      1999.07.13 08:57
      장철진 께서 말씀하시기를... > 안녕하세요 ... > 이미지그림의 바탕에서 그위에 리스트박스를 올렸습니...
    • 안류진
    • 1999.07.13 04:59
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 유민호
      1999.04.30 02:38
      소켓을 이용하는 프로그램을 만들고 있습니다. 서버프로그램에 있는 한개의 TStoredProcedure를 공통적...
    • 김영대
      1999.07.14 04:41
      안류진 께서 말씀하시기를... > 현재 sysbase를 사용하고 있습니다. > 이미지 field에 파일을 등록하고 ...
    • saxoji
      1999.05.01 00:41
      2-tier or 3-tier 환경으로의 programing시 자료형 중 variant가 있는 것이 아닌지? 이경우는 olevariant...
    • 신인재
      1999.04.30 20:39
      음냐...글쎄요 이런 문제는 서버쪽을 유심히 살펴 보아야 할꺼 같은데요.. 우선 서버쪽 프로그램을 고친후...