Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: 8.1.5 will not return a select row that is actually there?

Re: 8.1.5 will not return a select row that is actually there?

From: Thomas Kyte <tkyte_at_us.oracle.com>
Date: 27 Nov 2001 08:26:37 -0800
Message-ID: <9u0ert02m6s@drn.newsguy.com>


In article <5MKM7.82128$JZ3.230140_at_NewsReader>, "David" says...
>
>Hello,
>
>I have a table with a couple of hundred rows in it. There is one row that
>will not return for a select query programatically constructed.
><---------------------
>SQL> SELECT rw_field.RW_FIELD_ID, rw_field.RECORD_ID, rw_field.FIELD_NAME,
>rw_field.FIELD_TYPE,
> 2 rw_field.KEY_FIELD, rw_field.DATA_TYPE, rw_field.DESCRIPTION,
>rw_field.LENGTH,
> 3 rw_field.POSITION, rw_field.START_BYTE, rw_field.END_BYTE FROM rw_field
> 4 WHERE (rw_field.RECORD_ID=161) AND (rw_field.FIELD_NAME='New MSCI
>Industrial Class Code');
>
>no rows selected
><---------------------
>
>But will for this query
><---------------------
>SQL> select * from rw_field
> 2 WHERE (rw_field.RECORD_ID=161) AND (rw_field.FIELD_NAME like 'New%');
>

select '"' || rw_field.field_name || '"' , DUMP( rw_field.field_name )   from
  FROM rw_field
 WHERE (rw_field.RECORD_ID=161) AND (rw_field.FIELD_NAME like 'New%'

and see what that shows.

There may be extraneous characters (like binary zero or some other unprintable character you cannot see) at the end. DUMP will show you whats really truly in there.

>RW_FIELD_ID RECORD_ID FIELD_NAME
>FIELD_ KEY_FIELD DATA_TYPE
>----------- --------- -------------------------------------------------- ---
>--- --------- ----------
>DESCRIPTION
>----------------------------------------------------------------------------
>------------------------
> LENGTH POSITION START_BYTE END_BYTE
>--------- --------- ---------- ---------
> 8993 161 New MSCI Industrial Class Code
>Data 0 Long
>New MSCI Industrial Class Code
> 8 33 317 323
><--------------------
>
>And the original query works fine with any of the other field_name column
>values eg.
>
><--------------------
>SQL> SELECT rw_field.RW_FIELD_ID, rw_field.RECORD_ID, rw_field.FIELD_NAME,
>rw_field.FIELD_TYPE,
> 2 rw_field.KEY_FIELD, rw_field.DATA_TYPE, rw_field.DESCRIPTION,
>rw_field.LENGTH,
> 3 rw_field.POSITION, rw_field.START_BYTE, rw_field.END_BYTE FROM rw_field
> 4 WHERE (rw_field.RECORD_ID=161) AND (rw_field.FIELD_NAME='Taiwan
>Code');
>
>RW_FIELD_ID RECORD_ID FIELD_NAME
>FIELD_ KEY_FIELD DATA_TYPE
>----------- --------- -------------------------------------------------- ---
>--- --------- ----------
>DESCRIPTION
>----------------------------------------------------------------------------
>------------------------
> LENGTH POSITION START_BYTE END_BYTE
>--------- --------- ---------- ---------
> 8985 161 Taiwan Code
>Data 0 String
>Taiwan Code
> 5 25 269 273
>
><-------------------
>
>Any explanations?
>
>Thanks
>
>David
>
>

--
Thomas Kyte (tkyte@us.oracle.com)             http://asktom.oracle.com/ 
Expert one on one Oracle, programming techniques and solutions for Oracle.
http://www.amazon.com/exec/obidos/ASIN/1861004826/  
Opinions are mine and do not necessarily reflect those of Oracle Corp 
Received on Tue Nov 27 2001 - 10:26:37 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US