ID: 24752
User updated by: ssc at coolspot dot de
Reported By: ssc at coolspot dot de
Status: Open
Bug Type: MSSQL related
Operating System: Linux
PHP Version: 4.3.8
New Comment:
Ok, once again a lesson in the usage of a really
famous tool, called "diff", which could by new to some of
you. A TIP : if you are searching a release manager,
call me. It is "really" anoying to double-check
PHP each time i need to update.
/mssql/php_mssql.h iff -wu
php-4.3.8.working/ext/mssql/php_mssql.h php-4.3.8/ext/
--- php-4.3.8.working/ext/mssql/php_mssql.h 2004-08-23
15:56:59.000000000 +0200
+++ php-4.3.8/ext/mssql/php_mssql.h 2004-04-21
01:37:26.000000000 +0200
@@ -38,7 +38,7 @@
#if HAVE_FREETDS
#ifndef SHORT
-//typedef short SHORT;
+typedef short SHORT;
#endif
#define SQLTEXT SYBTEXT
#define SQLCHAR SYBCHAR
@@ -62,7 +62,9 @@
#define SQLIMAGE SYBIMAGE
#define SQLBINARY SYBBINARY
#define SQLVARBINARY SYBVARBINARY
+#ifdef SQLUNIQUE /* FreeTSD 0.61+ */
#define SQLUNIQUE SYBUNIQUE
+#endif
#define DBERRHANDLE(a, b) dberrhandle(b)
#define DBMSGHANDLE(a, b) dbmsghandle(b)
#define DBSETOPT(a, b, c) dbsetopt(a, b, c, -1)
Previous Comments:
------------------------------------------------------------------------
[2004-08-23 21:23:33] ssc at coolspot dot de
Open again dudes.
Is there somebody who needs lessons in CVS usage,
or what ?
------------------------------------------------------------------------
[2004-08-12 18:52:08] zakharm at hotmail dot com
I see that the following is in ext/mssql/php_mssql.h:
#ifdef SQLUNIQUE /* FreeTSD 0.61+ */
#define SQLUNIQUE SYBUNIQUE
#endif
When configuring PHP via ./configure, is there a parameter I can send
to configure to enable SQLUNIQUE?
I did get it working by removing the #ifdef & #endif, but is there
another way?
My configuration:
freedts
./configure --prefix=/usr/local/freetds --with-tdsver=8.0
php
./configure --with-mssql=/usr/local/freetds --with-regex=php
--with-config-file-path=/etc/php4/apache --disable-rpath
--enable-memory-limit --disable-debug --with-layout=GNU
--with-pear=/usr/share/php --with-mysql=shared
--with-apxs=/usr/bin/apxs
------------------------------------------------------------------------
[2004-06-08 15:44:31] dave at daveonline dot com
I am having a simular issue, however I am getting type (36) unknown and
not 35. The SQl server is Enterprise 2000. and the field is a
uniqueidentifier type. here is a line from the error:
Warning: mssql_query(): column 14 has unknown data type (36) in
/opt/mysql-standard-4.0.18-pc-linux-i686/scripts/test.php on line 34
and here is the conf file
--------------------------------------------
[global]
# TDS protocol version
tds version = 8.0
; initial block size = 512
# uses some fixes required for some bugged MSSQL 7.0 server
that
# return invalid data to big endian clients
# NOTE TDS version 7.0 or 8.0 should be used instead
; swap broken dates = no
; swap broken money = no
# Database server login method, if both server and domain
# logins are enabled, domain login is tried first if a domain
# is specified, and if that fails the server login will be
used.
# OBSOLETE
; try server login = yes
; try domain login = no
# The default authentication domain, can be overridden by
# specifying a username with a domain prefix, e.g.
DOMAIN\username
# OBSOLETE use DOMAIN\username as username
; nt domain = WORKGROUP
# If the server responds with different domain try that one?
# OBSOLETE never been used
; cross domain login = no
# Whether to write a TDSDUMP file for diagnostic purposes
# (setting this to /tmp is insecure on a multi-user system)
; dump file = /tmp/freetds.log
; debug level = 10
# Command and connection timeouts
; timeout = 10
; connect timeout = 10
# If you get out of memory errors, it may mean that your
client
# is trying to allocate a huge buffer for a TEXT field.
# (Microsoft servers sometimes pretend TEXT columns are
# 4 GB wide!) If you have this problem, try setting
# 'text size' to a more reasonable limit
text size = 64512
[testserver]
host = <<DELETED>>
port = 1433
tds version = 8.0
------------------------------------------------------------------------
[2004-02-25 03:04:03] s dot sonnenberg at coolspot dot de
I use exactly the combination : PHP 4.3.4 + FreeTDS 0.61.2.
And we have no such problems.
Could you please send your configure strings ?
------------------------------------------------------------------------
[2004-02-20 11:54:47] rgesse at ndigital dot com
I ran into the same problem wih the latest version of PHP and Freetds
(as of Feb. 18, 2004). I found that the only way to SELECT from a
uniqueidentifier field is the following:
SELECT LEFT(CAST(uniqueidentifierfield as char(64)), 36) AS thisfield
FROM table
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/24752
--
Edit this bug report at http://bugs.php.net/?id=24752&edit=1