#74 MS Sql sql on install and execution compatibility issues

v1.0 (example)
open
nobody
5
2007-11-15
2007-11-15
Martin
No

We have a Linux Debian with PHP5 (5.2.0-8+etch7), and a remote MS Sql server (2005).
While running the install application (install/install.php) we get the following errors:

Unable to execute your query. Please correct this error.
You may need to update your database structure. (http://<server>/xrms/admin/index.php)
Cannot insert explicit value for identity column in table 'ControlledObject' when IDENTITY_INSERT is set to OFF.

we tried executing manually:
INSERT INTO ControlledObject (ControlledObject_id,ControlledObject_name,on_what_table,on_what_field,user_field,data_source_id)VALUES (1,'Company','companies','company_id','',1)

This error happend only with mssql, and only when it's trying to insert an identity field with INDENTITY_INSERT off. It's a mssql restriction.

We managed to install the database manually, printing the install.php querys on screen. With this we could install the structure and the default data.

With the installation set, we tried to login into the system, but instead of login we now get this error:

Fatal error: Call to a member function rowcount() on a non-object in /var/www/xrms/activities/activities-widget.php on line 542

We took a look and printed the query response, and the query itself. Then we ran the query on the mssql server with a mssqlclient and gets this error response:

The text, ntext, and image data types cannot be compared or sorted, except when using IS NULL or LIKE operator.

To ensure that this error was only with mssql, we installed xrms using a mysql database, and it worked fine.

It looks like that xrms is not fully compatible with mssql.

Discussion