Q&A

  • [급함]Query에서 3k 필드를 insert, update 할때....
db : 오라클

aaa varchar2(3000)



위에서 처럼 필드가 3000으로 잡혔습니다.

이것을 쿼리로 insert, update시에 ( Tmemo )

paramByName('Ptxtdescription').AsString := m_txtdescription.Text;

코딩을 했습니다.



데이터가 작을경우는 가능한데 text가 많으경우(3k)

에러(DBIERR_KEYVIOL)가 납니다..



쿼리로 하는 방벙이 없겠습니다.........????

꼭 부탁 합니다....



1  COMMENTS
  • Profile
    남기석 2000.09.22 10:16
    안녕하세요 남기석입니다.



    저는 Oracle7을 사용하고 있는데...

    Oracle7에서 Varchar2 Type은 최대 2000Byte 까지만 지원합니다.

    혹시 오라클7을 사용중이시라면 필드를 잘못 만드신거네요...



    2000Byte 이상을 사용하시려면... Long Type을 사용하셔야 합니다.

    물론 Varchar2에 비해 Long 타입이 여러가지 면에서 불편합니다만...

    꼭 2000Byte 넘어가야 하는 거라면 Long Type 써야겠지요...



    오라클8 이라면???

    글쎄요 정확하진 않지만....

    오라클8 에서도 2000Byte까지만 지원하는 걸루 알고 있습니다.



    행복하세요...



    ====================================================================



    처음처럼 wrote:

    > db : 오라클

    > aaa varchar2(3000)

    >

    > 위에서 처럼 필드가 3000으로 잡혔습니다.

    > 이것을 쿼리로 insert, update시에 ( Tmemo )

    > paramByName('Ptxtdescription').AsString := m_txtdescription.Text;

    > 코딩을 했습니다.

    >

    > 데이터가 작을경우는 가능한데 text가 많으경우(3k)

    > 에러(DBIERR_KEYVIOL)가 납니다..

    >

    > 쿼리로 하는 방벙이 없겠습니다.........????

    > 꼭 부탁 합니다....

    >