Q&A

  • Query 에서..
ADO 를 이용하여 mdb 테이블을 생성하려 합니다.



동적생성이기때문에 생성될 테이블의 이름을 tbname 이라는 Parameter 로 입력

받으려하고 있습니다.



ADOQuery 를 이용하여 SQL 속성에 다음과 같이 입력했습니다.



CREATE TABLE :tbname

(

번호 char(9) null,

아이디 char(11) null,

이름 char(11) null,

접속시간 char(13) null,

종료시간 char(13) null

)



그리고 코드로



ADOQuery1.Parameter[0] := 'asdasd';

ADOQuery.ExecSQL;



이렇게 하고 컴파일을 했습니다. 그런데 Synatax In CREATE TABLE 이라는 오류가 뜹니다.



문법이 틀렸다는 것 이겠지요..



하지만, ADOQuery1.SQL 에서 :tbname 부분을 직업 테이블 이름값 asdasd 등으로 할당하면 전혀 문제가 되지 않습니다..



즉, SQL 문장 자체에는 문제가 없고, 파라메터와의 연결에서 문제로 보이는데,

어떻게 해결을 해야할지 조언좀 부탁드리겠습니다.

2  COMMENTS
  • Profile
    이지만 2000.03.07 14:24
    ADOQuery1, ADOQuery 등의 말이 나오고 있는데,



    ADOQuery1 과 ADOQuery 는 동일한 컴포넌트이고, 1이 빠진건 오타입니다.



    ADOQuery1.Para...

    ADOQuery.Exec...



    부분에서 둘째줄 ADOQuery. 은 ADOQuery1. 을 잘못 타이핑한 것입니다.



    게시물이 수정되지않아 이렇게 씁니다..ㅁa

  • Profile
    조복기 2000.03.07 21:01
    이지만 wrote:

    > ADOQuery1, ADOQuery 등의 말이 나오고 있는데,

    >

    > ADOQuery1 과 ADOQuery 는 동일한 컴포넌트이고, 1이 빠진건 오타입니다.

    >

    > ADOQuery1.Para...

    > ADOQuery.Exec...

    >

    > 부분에서 둘째줄 ADOQuery. 은 ADOQuery1. 을 잘못 타이핑한 것입니다.

    >

    > 게시물이 수정되지않아 이렇게 씁니다..ㅁa





    안녕하세요..

    제가 델파이안의 ADO컴포넌트를 사용하지않아서 잘 모르지만

    파라미터를 던져줄때 타입을 선언해서 사용하면 되지않을까하네요..



    ADOQuery1.Params[0].AsString = 'tablename';



    or



    ADOQuery1.ParamByName('param').AsString = 'tablename';



    그리고 SQL프로퍼티안에 직접 대입을 했다면 파라미터의 타입을 설정해주시구요..

    좋은하루되세요..