Q&A

  • Oracle8 에서 Insert할 때
Oracle 8을 이용하여 프로그램을 만들어 보고 있는데..

"General SQL error, ORA-00911:문자가 부적합합니다."라는

에러 메시지가 뜨네요.



with Query1 do

begin

close;

SQL.Clear;

SQL.Add('insert into '+ ComboBox1.Items[ComboBox1.ItemIndex]);

SQL.Add('values (');

SQL.Add(':R1, :R2);');

ParamByName('R1').AsString := trim(Edit1.Text);

ParamByName('R2').AsString := trim(Edit2.Text);

ExecSQL;

end;



코드는 위와 같고 테이블 이름은 한글로 되어있습니다. 이게 문제인듯 싶기도

한데.. 하여튼. 고수님들의 조언 기다리겠습니다.

1  COMMENTS
  • Profile
    박정일 1999.07.28 01:38
    이명학 께서 말씀하시기를...

    > Oracle 8을 이용하여 프로그램을 만들어 보고 있는데..

    > "General SQL error, ORA-00911:문자가 부적합합니다."라는

    > 에러 메시지가 뜨네요.

    >

    > with Query1 do

    > begin

    > close;

    > SQL.Clear;

    > SQL.Add('insert into '+ ComboBox1.Items[ComboBox1.ItemIndex]);

    > SQL.Add('values (');

    > SQL.Add(':R1, :R2);');

    > ParamByName('R1').AsString := trim(Edit1.Text);

    > ParamByName('R2').AsString := trim(Edit2.Text);

    > ExecSQL;

    > end;

    >

    > 코드는 위와 같고 테이블 이름은 한글로 되어있습니다. 이게 문제인듯 싶기도

    > 한데.. 하여튼. 고수님들의 조언 기다리겠습니다.





    부산 사는 사람입니다.



    상기 부분중

    SQL.Add(' values ('); // value 앞에 Space를 하나 주고

    SQL.Add(':R1, :R2) '); // ; 을 없앴습니다.



    Oracle SQL 구분에서 하는 것처럼 문장의 끝에 ;을 주어서는 안됩니다.