Re: simple things

From: Slava Natapov <Slava_Natapov_at_mail.stil.scitex.com>
Date: 1996/11/10
Message-ID: <3286084B.5E0_at_mail.stil.scitex.com>#1/1


Simon Verzijl wrote:
>
> Can anyone tell me why this simplest query doesn't work ? :
>
> create table test (name char(20), number decimal(3) );
> insert into test values ('simon', 100);
>
> select number from test where name='simon';
> (so far so good)
>
> but this :
>
> select number from test where name=substr('simonblablablabla',1,5);
>
> doesn't return any rows.
>
> same goes for the following PL/SQL script (which was in fact the
> actual reason I started testing the above)
>
> create or replace
> procedure get_number(person in varchar2)
> is d_number integer;
> begin
> select number into d_number
> from test
> where name =person;
> end if;
> end;
>
> (Oracle version: Personal Oracle 7.2/ Oracle Workgroup Server 7.2)
>
> Simon

Datatype CHAR in Oracle have fixed length. So you have to use VARCHAR2 when you create table ,OR   RPAD ... For example :

select number
from test
where name=rpad(substr('simonblablablabla',1,5),20);

P.S. Please don't use name "number" for column name... :)

Slava. Received on Sun Nov 10 1996 - 00:00:00 CET

Original text of this message