Thread: Encoding and result string length
Dear Friends,
Postgres 7.3.2 on Linux 8
I would like to fetch the datas from a table in a encoded format.
create table encodeco(c1 int4, c2 int4);
insert into encodeco values(10000, 20000);
select * from encodeco;
insert into encodeco values(10000, 20000);
select * from encodeco;
So I want to encode the data while selecting.
select encode(c1,'base64') from encodeco;
ERROR: Function encode(integer, "unknown") does not exist
Unable to identify a function that satisfies the given argument types
You may need to add explicit typecasts
So i tried
select encode('c1','base64') from encodeco;
I got a result as
1 YzE=
But this is the encoded value for 'c1' and not for the value 10000.
Please shed some light.
Also is it possible to get the encoded values with only 2 charactors, irrespective of the values of c1 ranging from 100 to 10 million
Thanks
Kumar
On Thursday 08 April 2004 10:32, kumar wrote: > > create table encodeco(c1 int4, c2 int4); > insert into encodeco values(10000, 20000); > select * from encodeco; > > So I want to encode the data while selecting. > select encode(c1,'base64') from encodeco; > So i tried > select encode('c1','base64') from encodeco; Not quite: SELECT encode(c1::text, 'base64') FROM encodeco; or SELECT encode(CAST(c1 AS text), 'base64') FROM encodeco; > Also is it possible to get the encoded values with only 2 charactors, > irrespective of the values of c1 ranging from 100 to 10 million You could write such a coding so long as you don't mind having ten-thousand characters in your character-set. Of course, character does not equal byte like this, but that's true in the various unicode systems anyway. -- Richard Huxton Archonet Ltd