Q&A

  • DB 프로그램 제작 관련 질문입니다.
갑작스럽게 델파이를 다뤄야할 상황이 생겨서 이것저것 해보는데..

query를 보내서 select 하는건 해봤는데..

insert부분에서 막히네요.. insert나 delete 부분은 따로 설정해줘야하나요?

db는 test 삼아서 paradox를 사용하고있는데요..(mssql로 주로 작업할듯한데.. mssql 깔고 하는게 나은지요.. 아니라면 paradox로 작업하고 나중에 mssql로 바꿀까하는데요..)

       Query1.Close;
       Query1.Sql.Clear;
       Query1.Sql.Add('Insert Into test.db ');
       Query1.Sql.Add('(title,name,cmt)');
       Query1.Sql.Add(' Values ');
       Query1.Sql.Add('(:title, :name, :cmt)');
       Query1.ParambyName('title').AsString := Edit2.Text;
       Query1.ParambyName('name').AsString := Edit3.Text;
       Query1.ParambyName('cmt').AsString := Edit4.Text;
       Query1.ExecSQL;

뭐가 문제인지..

버튼 누르면 edit 박스에 있는 내용이 query로 통해 insert 하게 하는 아주 간단한건데요..

안되네요.. 파라독스라 그런지.. 뭐가 문젠지;;

간단한 예제라도 보내주시겠습니까?--a 요것만 해결하면 될듯한데.

그리고 db 작업을 할건데..bde 로 하고있는데.. ado가 나을지..

조언좀 부탁드려요;; 판매재고 관련 프로그램 만들까 하거든요..
2  COMMENTS
  • Profile
    김기원 2007.11.13 17:53
    안녕하세요.

    저의 경우 파라미터를 사용하지 않고 아래와 같이 처리합니다.
    예전에 파라미터를 사용할 경우 간혹 속도가 느려지는 경우가 발생하였습니다.
    오라클이든 MS SQL 이든 차이는 없습니다. ^^

    <!--CodeS-->
           Query1.Close;
           Query1.Sql.Clear;
           Query1.Sql.Add('Insert Into test.db ');
           Query1.Sql.Add('(title,name,cmt)');
           Query1.Sql.Add(' Values ');
           Query1.Sql.Add(Format('(''%s'', ''%s'', ''%s'')',[Edit2.Text, Edit3.Text, Edit4.Text]));
           Query1.ExecSQL;
    <!--CodeE-->

  • Profile
    Marek 2007.11.13 06:35
    안녕하세요

    처음부터 작업하려는 Database를 설치후 개발하십시요.
    파라독스를 사용하려면 님의 코드중
    Query1.ParambyName('title').AsString := Edit2.Text; 은
    Query1.ParambyName(':title').AsString := Edit2.Text; 으로
    바꾸어야 합니다.  (다른 파라미터도 해당)
    나중에 MSSQL로 바꾸는 것은 또다른 대 작업입니다.

    MSSQL 또는 ORACLE이면 직접 쿼리보다는 스토어드프로시저를 사용하세요.
    유지보수등을 고려하면 훨 좋습니다.

    그리고 Connection은 ADO를 쓰지 않으면 Client에 드라이버를
    설치하여야 하므로 매우 번거롭습니다.  
    가급적 ADO를 사용하는 것을 권장합니다.

    Marek Wrote


    • 이정욱
      2007.11.13 01:19
      랜카드의 구별이 아닌 IP주소로 판단 하시면 됩니다. 즉 공인아이피와 사설아이피와의 구분은 명확하므로,...
    • Marek
      2007.11.13 06:25
      안녕하세요 여러개의 디렉터리를 선택하시려면 ShellTreeView와 ShellListView를 이용하세요 ShellList...
    • 황경수
      2007.11.13 18:15
      제가 작성하고자 하는 프로그램은 디렉터리 외에는 파일은 선택이 되면 안되거든요. 그런데, ShellListV...
    • 구창민
      2007.11.13 20:24
      안녕하세요.. ShellListView 의 프로퍼티에 ObjectTypes 를 보시면, otNonFolders <- 얘를 False 로 ...
    • 황경수
      2007.11.13 20:46
      위에 답글 달아 주신 분도 감사하구요. 구창님님께도 정말 감사 드립니다.. 고마워서 눈물이..ㅜ.ㅜ ...
    • 초보자
    • 2007.11.12 13:04
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      2007.11.13 01:22
      쉽습니다. ShellListView에서 선택된 것의 경로를 가지고 확인하시면 됩니다. 예를들면.. <!--...
    • 구창민
      2007.11.13 00:01
      안녕하세요.. 아래코드는 특정 디렉토리 내의 목록을 구하는 루틴인데, 코드를 보시면, 디렉토리인...
    • Phil Choi
    • 2007.11.12 10:45
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김기원
      2007.11.13 17:53
      안녕하세요. 저의 경우 파라미터를 사용하지 않고 아래와 같이 처리합니다. 예전에 파라미터를 사용할 ...
    • Marek
      2007.11.13 06:35
      안녕하세요 처음부터 작업하려는 Database를 설치후 개발하십시요. 파라독스를 사용하려면 님의 코드중...
    • 이정욱
      2007.11.11 03:57
      에구.. 수동으로 그냥 입력하셨나 보군요. 델파이 폼 위에 버튼과 라벨을 한개씩 올리신 후에 프로퍼티 ...
    • 문원규
      2007.11.13 03:27
      델파이 폼 위에 버튼과 라벨을 한개씩 올린다는 뜻과 프로퍼티 창에서 이벤트 탭의 OnClick 이벤트를 더...
    • 이정욱
      2007.11.13 21:06
      답변이 될지는 모르겠지만.... 말로 설명드리기는 좀 힘들것 같네요.. 델파이 책 을 하나 구하셔서 ...
    • 김기원
    • 2007.11.10 00:31
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      2007.11.10 21:37
      그냥 노트패드에서 작업해서 사소한 버그가 있을 수 있습니다.. 아래와 같은 결과를 원하시는 것인지요? ...
    • 김기원
      2007.11.13 00:57
      감사합니다. 방법을 찾다가 해결한 방법이 아래와 같았습니다. ^^; 역시 체계적으로 배우질 않았더니 막...
    • 델코초
      2007.11.10 03:41
      아래와 같이 해 보시는건 어떨까요? ^^ procedure TfrmMain.UF_ShowChildForm(frmClass: TFormClas...
    • 김기원
      2007.11.10 20:03
      답변감합니다. 그런데 같은 오류가 발생합니다. ^^;
    • Marek
      2007.11.10 23:39
      안녕하세요 QuickRep를 구동시키는 소스를 함께 올려주세요. 컴포넌트 올렸다고 해서 느려지는 것은 절...
    • 최용일
      2007.11.09 01:15
      안녕하세요. 최용일입니다. 도움말에 보니 GetLastError를 호출하면 에러메세지를 알 수 있고, Internet...
    • 델파인
      2007.11.09 03:00
      InternetGetLastResponseInfoA(lpdwError, lpszBuffer, lpdwBufferLength) 함수를 써서 실행해 보았는데 에...
    • 한기동
    • 2007.11.08 19:18
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 한기동
      2007.11.08 20:43
      자작 답변이네용 ㅎㅎ~ 다른 사용자들 있을거라 생각해서 퀵리포트4.07 버그를 패치한걸 올려드립니다. ...
    • 델코초
    • 2007.11.08 05:22
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      2007.11.08 15:57
      폴더를 선택하는 다이얼로그는 따로 준비되어있습니다. OpenDialog나 SaveDialog는 파일 선택을 위한 다...
    • 델코초
      2007.11.08 22:21
      여기저기 찾아보고 있는데, 잘 안보이네요... opendialog 관련해서는 많은것 같은데, Save 관련해서는 ...
    • 최용일
      2007.11.09 01:17
      SHBrowseForFolder로 검색해보세요. 여기저기 예제가 많이 있을겁니다.
    • 이영주
    • 2007.11.08 05:04
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 델코초
      2007.11.10 02:47
      잘 되는데요... ^^ 샘플코드 올려 볼께요... 받아서 실행 해보세요.. 델 7 으로 만들었어요.. 프...
    • 이영주
      2007.11.10 03:32
      음... 소스코드 확인안하고 무심코 실행했다가... 골동품 기계 인걸 다시 확인했습니다. 엑셀을 100번을 ...
    • 델코초
      2007.11.10 03:43
      ㅎㅎ 죄송합니다... 고생 시켜 드리려 한건 아니었는데... 에고... ^^
    • 초보자
    • 2007.11.08 03:12
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 김병윤
      2007.11.09 20:06
      메뉴에 보시면 Tool > Editer Option 에서 변경하실 수 있습니다.
    • 미로
    • 2007.11.07 20:29
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2007.11.09 02:51
      핫키의 ID를 알 수 있는 방법이 없는것 같아서.. 핫키 자체를 보내지는 못할것 같군요... 다만 Keybd_ev...
    • 구창민
      2007.11.06 21:43
      안녕하세요... 기본프린터가 설정되어 있지 않은 경우 메시지를 출력하고 종료하는 루틴입니다.. fun...
    • 박준영
      2007.11.06 21:47
    • 이영도
      2007.11.06 20:23
      곰플레이어를 걍 ActiveX로 등록하시면 쉬운데. 그렇게는 안하시나요.
    • 미로
      2007.11.06 20:50
      ActiveX 사용 안하고.... 별도 프로그램에서 제어하고 싶거든요.
    • 이현우
      2007.11.25 03:10
      곰플레이어 제작자가 아닌이상 버튼이 눌러졌을때 발생되는 메시지까진 알기 힘듭니다. 하지만 프로그램을...
    • 낙화
    • 2007.11.06 01:53
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2007.11.06 18:34
      음.... InstallShield는 ocx만드는 프로그램이 아니라 설치 프로그램을 만드는 프로그램입니다. ocx를 ...
    • 양선호
    • 2007.11.06 01:39
    • 0 COMMENTS
    • /
    • 0 LIKES