8

I have installed Oracle 10g in my virtual XP and created a table using

create table reg1 (
  fname varchar2(30),
  lname varchar2(30),
  addr varchar2(30),
  mail varchar2(30),
  occu varchar2(30),
  uname varchar2(30),
  passwd varchar2(30)
);

and the table created successfully.But when I am trying to fetch the values by simple query like

select fname, lname 
  from reg1 
 where uname="bbb";

I am getting error like

ORA-00904: "bbb": invalid identifier

I cannot understand what I have done wrong here.

OMG Ponies
  • 325,700
  • 82
  • 523
  • 502
Mistu4u
  • 5,132
  • 15
  • 53
  • 91

2 Answers2

19

Use single quotes.

select fname,lname from reg1 where uname='bbb';
Andrew Leach
  • 12,945
  • 1
  • 40
  • 47
7

Oracle uses double quotes " in order to identify cased object names. For instance the table "test" is not the same as the table test.

Strings should be enclosed by single quotes, '.

Making your query:

select fname, lname from reg1 where uname = 'bbb';

What's actually happening in your query is Oracle is trying to find the column "bbb" in the table reg1, as this column doesn't exist you get the error thrown.

Ben
  • 51,770
  • 36
  • 127
  • 149