Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

oracle - typ long

40 views
Skip to first unread message

Marek Horodyski

unread,
Dec 7, 2007, 2:22:01 AM12/7/07
to
W tabeli jest kolumna z typem long, a w niej tekstowe opisy jakiś zdarzeń.
Niestety - nie wiem dlaczego nie jest to varchar2. Nie chodzi select z like
po tej kolumnie

select * from tabela where opis like '%interesujace%'

Opis jest typu LONG,
- mam :

ORA-00932: niespójne typy danych: oczekiwano NUMBER, otrzymano LONG


Jak zadac pytanie do powyższej struktury ?

Pozdrawiam,
Marek Horodyski

Lucyna Witkowska

unread,
Dec 7, 2007, 2:53:35 AM12/7/07
to
Marek Horodyski <m.hor...@pzuzycie.com.pl> napisał:

> W tabeli jest kolumna z typem long, a w niej tekstowe opisy jakiś zdarzeń.
> Niestety - nie wiem dlaczego nie jest to varchar2.

Bo ma przechowywac wiecej niz 4000 znakow, ktore obsługuje typ varchar2.

> Nie chodzi select z like
> po tej kolumnie
> select * from tabela where opis like '%interesujace%'
> Opis jest typu LONG,
> - mam :
> ORA-00932: niespójne typy danych: oczekiwano NUMBER, otrzymano LONG
> Jak zadac pytanie do powyższej struktury ?

Zmień typ LONG na CLOB - inaczej beda kłopoty np. z replikacją.
W 10g da sie to zrobic nawet jak w kolumnie sa dane.

Jesli z innych przyczyn nie da sie zmienic typu kolumny - jest taki myk, z
funkcją PL/SQL, ktora zamienia typ LONG na varchar2.

Pozdrowienia,
Lucyna Witkowska

Marek Horodyski

unread,
Dec 7, 2007, 5:10:24 AM12/7/07
to

Użytkownik "Lucyna Witkowska" <ypwi...@nospamcyf-kr.edu.pl> napisał w
wiadomości news:fjau5v$l7v$1...@srv.cyf-kr.edu.pl...

> Marek Horodyski <m.hor...@pzuzycie.com.pl> napisał:
>> W tabeli jest kolumna z typem long, a w niej tekstowe opisy jakiś
>> zdarzeń.
>> Niestety - nie wiem dlaczego nie jest to varchar2.
>
> Bo ma przechowywac wiecej niz 4000 znakow, ktore obsługuje typ varchar2.
>
[...]

>
> Zmień typ LONG na CLOB - inaczej beda kłopoty np. z replikacją.
> W 10g da sie to zrobic nawet jak w kolumnie sa dane.
>
> Jesli z innych przyczyn nie da sie zmienic typu kolumny - jest taki myk, z
> funkcją PL/SQL, ktora zamienia typ LONG na varchar2.


Dzieki. Baza stoi na 9.2. Wniosek developerom wysłałem.

Pozdrawiam,
Marek Horodyski

0 new messages