Q&A

  • 델파이 에서 sql 문 쓸때 ' < 넣는 법좀 알려주세요

델파이 시작 한지 얼마 안되는 초보 입니다. sql 쪽에 integer  를 인식 하기 위해 ' 1 ' << 이런식으로 써야 하는데 넣는 법을 모르겠네요 =ㅅ=


<!--CodeS-->

   ADOQuery1.SQL.Text := 'Select DISTINCT user_id from mail_Box where '
                       + ' Alert_chk = 0 and check_mail=0';
   ADOQuery1.Open;


   while not ADOQuery1.Eof do begin

      Memo1.Lines.Add(ADOQuery1.FieldByName('user_id').AsString);
      user_id := ADOQuery1.FieldByName('user_id').AsString;

      if User_id <> '' then begin
         ADOQuery2.SQL.Text := 'Select idx, user_id, mail_from, mail_subject'
                             + ' from mail_Box where user_id = :id  and Alert_chk = 0 '
                             + ' and check_mail=0';

         ADOQuery2.Parameters.ParamByName('id').Value := user_id;
         ADOQuery2.Open;

         idx_rb  := ADOQuery2.FieldByName('idx').AsString;

         mail := #13 + user_id + '님에게 온 메일';

         while not ADOQuery2.Eof do begin
            mail_from    := ADOQuery2.FieldByName('mail_from').AsString;
            mail_subject := ADOQuery2.FieldByName('mail_subject').AsString;
          
            idx          := ADOQuery2.FieldByName('idx').AsString;

            mail         := mail + #13 + line + #13 + mail_from + #13 + mail_subject;

            if idx_rb <> ADOQuery2.FieldByName('idx').AsString then begin
              

            idx_rb    := idx_rb+','+idx;  / / 요부분 입니다


            end;
//           idx[i] := ADOQuery2.FieldByName('idx').AsString;
            ADOQuery2.Next;
         end;
         ADOQuery2.SQL.Text := 'Update Mail_Box Set Alert_chk = 1 Where '
                             + ' user_id in(:alert)';
         ADOQuery2.Parameters.ParamByName('alert').Value   := idx_rb;
         ADOQuery2.ExecSQL;

           ADOQuery2.Close;

      end;




      memo1.Lines.Add(idx_rb);
      MessageToUserEx(0, Pchar(User_id), Pchar(Mail), 350, 0, 0);
      mail := '';

      ADOQuery1.Next;


<!--CodeE-->
3  COMMENTS
  • Profile
    착한천사 2006.10.11 21:08
    착한천사 김경록입니다.
    TString에 ' 문자를 넣기 위해서는 2번 여달아 쓰시면 됩니다.
    즉 '내용' 이렇게 되는 것과 일맥 상통하는 것으로 표기는 '''' 으로 표기합니다. 귀찮은 부분이죠.. 이것이..
    C처럼 역슬러쉬 다음에 쓰면 되게끔 하면 좋겠지만..
    또 그렇지는 않군요..

    결과적으로, '과 '사이에 ''를 넣으면 된다는 뜻입니다
    예를들면,
    <!--CodeS-->
    ShowMessage('''가나다라''');
    <!--CodeE-->
    답변이 되었으면 합니다.



  • Profile
    최수호 2006.10.13 03:49

    답변 감사합니다 ^^
  • Profile
    최수호 2006.09.30 08:47