Thread: Fix ecpg SQL CONNECT with variable user name
Here is a fix for ecpg in 8.3 when the user name is specified by variables on SQL CONNECT. When we compile the following statement in ecpg: EXEC SQL CONNECT TO :dbname USER :usrname IDENTIFIED BY :usrpass; ecpg in 8.2 compiles it correctly. { ECPGconnect(__LINE__, 0, dbname , usrname , usrpass , NULL, 0); } but ecpg in 8.3beta4 returns wrong results. { ECPGconnect(__LINE__, 0, dbname , " $1 " , " $2 " , NULL, 0); } It seems to come from the change of create_questionmarks() in http://archives.postgresql.org/pgsql-committers/2007-08/msg00185.php http://developer.postgresql.org/cvsweb.cgi/pgsql/src/interfaces/ecpg/preproc/preproc.y?r1=1.348&r2=1.349 Variables are represented as "$%d" instead of "?" now. The grammer of "user_name" should have followed the change. Regards, --- ITAGAKI Takahiro NTT Open Source Software Center
Attachment
On Fri, Dec 28, 2007 at 11:43:49AM +0900, ITAGAKI Takahiro wrote: > Here is a fix for ecpg in 8.3 when the user name is specified by > variables on SQL CONNECT. > ... Just committed fix to CVS. Thanks for pointing this out and fixing it Takahiro-san. Michael -- Michael Meskes Email: Michael at Fam-Meskes dot De, Michael at Meskes dot (De|Com|Net|Org) ICQ: 179140304, AIM/Yahoo: michaelmeskes, Jabber: meskes@jabber.org Go VfL Borussia! Go SF 49ers! Use Debian GNU/Linux! Use PostgreSQL!