Thanks Joe,
Here is my next question.
create table test_a (b bit(3));
create view test_vw (b1, b2, b3)as select to_number(substring(b,1,1)::int,'9') as b1,to_number(substring(b,2,1)::int,'9') as b2,to_number(substring(b,3,1)::int,'9') as b3 from test_a;create or replace rule test_a_ins as on insert to test_vwdo insteadinsert into test_a (b) values (COALESCE(new.b1::bit,'1')||COALESCE(new.b2::bit,'0')||COALESCE(new.b3::bit,'0')::bit);
ERROR: cannot cast type numeric to bit
How will I resolve this?
Regards
skarthi
> Date: Wed, 11 Apr 2007 17:44:01 -0400> From: dev(at)freedomcircle(dot)net> Subject: Re: [ADMIN] [SQL] Urgent help in bit_string data type> To: skarthi98(at)hotmail(dot)com> CC: pgsql-admin(at)postgresql(dot)org; pgsql-sql(at)postgresql(dot)org> > Hi skarthi,> > On Wed, 2007-04-11 at 13:30 -0700, Karthikeyan Sundaram wrote:> > insert into test_a values (to_char(1,'9'));> > > > ERROR: column "b" is of type bit but expression is of type> > text> > HINT: You will need to rewrite or cast the expression.> > As suggested by the error, you should use a cast, e.g.,> > insert into test_a values 9::bit(3);> > This will result in binary '001' being inserted because you need 4 bits> to represent decimal 9.> > Joe> > > ---------------------------(end of broadcast)---------------------------> TIP 6: explain analyze is your friend
_________________________________________________________________
Take a break and play crossword puzzles - FREE!
http://games.msn.com/en/flexicon/default.htm?icid=flexicon_ wlmemailtaglinemarch07