See #14 for more info. "bigint" doesn't work for PHP 32-bit, as the integer could get too big for PHP to be able to interpret the value as an integer type. In that case it would try to approximate it as a float, but that could lead to a bad assumption for identity columns. For compatibility, stick with standard "int" type which has a maximum value of 2147483647. Note that MySQLAdapter already has this maximum, so changing it to this keeps this database adapter consistent with MySQL.
…tripe-mssql into tractorcow-3.0-index-fixes
Reverts 13cdb07 and instead calls setLimitItems(false) on PaginatedList to tell it we've already limited the number of items to be shown.
…nged otherwise it continually shows as changed from "float(53) not null..." to "float not null"
This involves changing a few things around so that it's closer to how the MySQLDatabase adapter works. indexList() should return an array in the same format instead of using arbitrary "indexname" and "spec". indexNames() has also been introduced to MSSQLDatabase so that we can drop all indexes (except for fulltext and primary key indexes) on a table when altering the table columns, this helps when constraints not directly related to a modified column refuse to allow changes.
MSSQL doesn't support putting an alias into the OVER clause, something which is required when limiting results with an offset. The workaround is to just put the aggregate inline, taken from the select list.
Whenever databaseError() is called when a database problem occurred then the last error is automatically appended to the end of the general error message.
building field meta-data only on construct of MSSQLQuery
Fixing the date type to actually be "date", and not "datetime" so that values are returned as "Y-m-d" for dates, and not "Y-m-d H:i:s". Additionally, fixing a case where using the mssql functions would return strange datetime formats. We need the datetime field values in Y-m-d H:i:s. To get this working, we need to inspect the field type when retrieving rows from the database and re-format the datetime value at this point. This is done in MSSQLQuery::nextRecord()