Package home | Report new bug | New search | Development Roadmap Status: Open | Feedback | All | Closed Since Version 1.5.0b4

Bug #11797 mssql_field_name should not be used
Submitted: 2007-08-08 11:20 UTC Modified: 2007-08-13 06:40 UTC
From: gorgeb Assigned: quipo
Status: Closed Package: MDB2_Driver_mssql (version 1.2.1)
PHP Version: 4.4.3 OS:
Roadmaps: (Not assigned)    
Subscription  


 [2007-08-08 11:20 UTC] gorgeb (Bertrand Gorge)
Description: ------------ The implementation of the driver suffers the shortcomming of PHP built-in implementation of mssql_field_name, which only returns the first 30 cars of the field name. This limit is of 128 chars since MS-SQL 7 at least. I must say I haven't found a way to bypass the function, but if there's way that would be very nice (without using some other version of dlls or whatever, not everyone has full control over their build environment...)

Comments

 [2007-08-11 12:28 UTC] quipo (Lorenzo Alberton)
have you already opened a bug for the PHP mssql extension? AFAIK, there's no workaround, since mssql_fetch_field() has the same behaviour (i.e. returns only the first 30 chars of the field name)
 [2007-08-13 04:51 UTC] gorgeb (Bertrand Gorge)
There's one bug filed (not by me) : http://bugs.php.net/bug.php?id=40986 There doesn't seem to be a large push upon fixing it though. For a workaround, would it be possible, at least in the reverse module, to use a query on MSSQL schema to fetch the field names ?
 [2007-08-13 05:43 UTC] quipo (Lorenzo Alberton)
Do you mean listTableFields() in the Manager module? Sure, fixed in CVS.
 [2007-08-13 06:40 UTC] gorgeb (Bertrand Gorge)
Excellent - just saw the fix in cvs. I'll check if it fixes the schema's updatedatabase function. Thanks!