what's wrong with this?- md5 takes TEXT as an argument, not a numeric type
create type tSession as ( ty_found boolean, ty_Session char(32) );
create or replace function GetSessionID( integer ) returns tSession as ' declare thisSession tSession; begin --HERE!!! thisSession := ( ''t'', md5( now( ) || rand( ) ) );
- assign each variable of type tSession to its corresponding value:
thisSession.ty_found := ''t'';
thisSession.ty_session := md5(CAST((now( )) AS TEXT));
I haven't looked up the rand() function, but you can see from this how you would cast it and now() to text.
return thisSession; end; ' language plpgsql;
thx
---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings
And then you can get the results: select * from getsessionid(1); imperial=# select * from getsessionid(1); ty_found | ty_session ----------+---------------------------------- t | cf76cca2b562a0ead48d3eb3810f51cc (1 row)
hth
Ron
---------------------------(end of broadcast)--------------------------- TIP 9: the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match