Sean Harvey
14cf1d243c
ENHANCEMENT Performance improvements to MSSQLDatabase, mostly involves per-request caching of constraint check clauses since it's such an expensive query. Getting constraint names has been split out into a separate method, as it's a relatively cheap query to make without caching
2010-10-14 21:11:20 +00:00
Sean Harvey
ae1494c313
BUGFIX Renamed MSSQLQuery::destroy() renamed to destruct() so that it is called properly after the object is destroyed
2010-10-14 05:03:01 +00:00
Sean Harvey
35d04ac387
MINOR Tidied up comments, added is_resource() check on MSSQLQuery::seek() to be consistent with the other methods
2010-10-05 00:55:16 +00:00
Sean Harvey
d2082107b5
API CHANGE Re-enabled transaction support in MSSQLDatabase transaction methods. TransactionTest appears to pass on sqlsrv and mssql now
2010-10-02 03:36:04 +00:00
Sean Harvey
e8ba221024
MINOR Reverted r111461, as it's not specific to SQL Server, but a framework level issue. FulltextSearchable decorator should be used instead to decorate existing SiteTree for example
2010-10-02 01:59:20 +00:00
Geoff Munn
159dc13659
ENHANCEMENT: FTS now supports external tables to be specified as part of the value
2010-09-30 23:58:21 +00:00
Sean Harvey
ba4f843819
BUGFIX MSSQLDatabase::formattedDatetimeClause() should account for the timezone when returning a UNIX timestamp
2010-09-29 10:10:51 +00:00
Sean Harvey
083517d02b
MINOR Tidy up of code in MSSQLDatabase::__construct()
2010-09-29 04:30:05 +00:00
Sean Harvey
75b1933ca3
BUGFIX #6042 Use single quotes for MSSQLDatabase::$noiseWords as some PHP versions/settings might have trouble with this (thanks mattclegg!)
2010-09-28 19:44:08 +00:00
Mateusz Uzdowski
27b44a3722
BUGFIX: numRecords not supported on sqlsrv, need to count manually
2010-09-01 04:49:07 +00:00
Mateusz Uzdowski
2b5f25455f
BUGFIX: limit the query results for pagination
2010-09-01 04:06:36 +00:00
Mateusz Uzdowski
2aff1a9196
ENHANCEMENT: check for empty clause which will break the sql query
2010-08-31 22:19:58 +00:00
Mateusz Uzdowski
bef5b0ed05
BUGFIX: fix TranslatableSearchFormText by supporting fulltext search for MSSQL and using extendedSQL function call that augments queries properly (previously it was using DB::query which does not augment). Added wait to TranslatableSearchFormText so the test actually passes.
2010-08-31 05:52:48 +00:00
Mateusz Uzdowski
da356e5a01
BUGFIX: repair the transactions for sqlsrv driver on Windows. They are still not fully supported, so mark the driver as not supporting transactions.
2010-08-31 03:18:00 +00:00
Mateusz Uzdowski
d066f99d5e
BUGFIX: re-enabling MARS, framework assumes it can run DB::query without fetching the results, which leaves the result set open and prohibits executing another query in the mean time
2010-08-30 21:51:09 +00:00
Sean Harvey
1cab98c219
MINOR Updated class documentation for MSSQLDatabase
2010-08-30 05:47:57 +00:00
Sean Harvey
81de1e073f
BUGFIX When MSSQL_USE_WINDOWS_AUTHENTICATION is enabled, ensure the connection parameters include CharacterSet, MultipleActiveResultSets as "UTF-U" and boolean false respectively
2010-08-30 05:29:21 +00:00
Mateusz Uzdowski
410d15cf08
BUGFIX: disable MARS, we don't need it/don't support it
2010-08-30 04:18:29 +00:00
Mateusz Uzdowski
94355edcd2
BUGFIX: busy wait for indexing to complete before continuing with the test, so we can be sure the FTS returns up to date results
2010-08-26 20:54:40 +00:00
Mateusz Uzdowski
2745036563
BUGFIX: adjust the full-text search for mssql by stripping out non-alphabetic characters which are ignored by mssql anyway (and some of them crash the search engine)
2010-08-25 23:21:06 +00:00
Mateusz Uzdowski
0b28428a16
BUGFIX: the search for "quoted string" would fail. Changed to ANSI compliant quotes and prevented double-quoting.
2010-08-25 20:44:51 +00:00
Sean Harvey
27c3997061
BUGFIX Fixed fulltext not being dropped before re-adding it in MSSQLDatabase::getIndexSqlDefinition()
2010-07-18 23:14:51 +00:00
Sean Harvey
c44f5ca9ed
MINOR Code syntax formatting
2010-07-13 05:46:33 +00:00
Sean Harvey
f211d2cea8
BUGFIX Fixed dev/build always showing changes in nvarchar fields because of a stray whitespace in the spec value
2010-07-13 05:07:40 +00:00
Andreas Piening
77f453c036
ENHANCEMENT: added transaction support
2010-06-24 05:37:45 +00:00
Sean Harvey
1e22a12cd6
BUGFIX MSSQLDatabase::__construct() should use "UTF-8" as a CharacterSet parameter to sqlsrv_connect(), not "utf8" as it's not recognised by that API
2010-06-03 12:06:26 +00:00
Sean Harvey
7c7e81ac70
MINOR Removed stray $error variable that isn't necessary in MSSQLDatabase::query()
2010-06-03 12:05:12 +00:00
Sean Harvey
13f90299cc
MINOR Better error debugging message when sqlsrv_errors() is used on MSSQLDatabase::query() on a failed query
2010-06-03 12:03:27 +00:00
Sam Minnee
78d47d312f
BUGFIX: Fixed index creation in MSSQL.
2010-06-03 00:58:33 +00:00
Sam Minnee
53156eb94e
BUGFIX: Fixed MSSQLDatabase::hasTable()
2010-06-03 00:58:32 +00:00
Sam Minnee
9a1ee37cbd
BUGFIX: Prevent dev/build errors with fulltext indexes on MSSQL.
2010-06-03 00:58:32 +00:00
Sam Minnee
feebe26208
API CHANGE: Added MSSQLDatabase::set_collation() to let you set the collation for the nvarchar fields.
2010-06-03 00:58:31 +00:00
Sam Minnee
07ea9353e1
ENHANCEMENT: Switch MSSQL to use the utf8 character set for the connection.
2010-06-03 00:58:31 +00:00
Sean Harvey
8e28fc70f6
MINOR Updated class doc
2010-05-27 23:05:32 +00:00
Sean Harvey
b6b9e00803
MINOR Class doc
2010-05-27 22:25:45 +00:00
Sean Harvey
028e54c306
MINOR Updated MSSQLDatabase class docs
2010-05-26 10:05:21 +00:00
Sean Harvey
b4851c5c1c
MINOR Removed MSSQLDatabase::runTableCheckCommand() which is not used
2010-05-26 09:58:40 +00:00
Sean Harvey
b484b14be5
ENHANCEMENT Added MSSQLDatabase::getVersion() to determine the current version of MSSQL in use
2010-05-26 05:24:15 +00:00
Sean Harvey
5ad91ce0ed
ENHANCEMENT Added MSSQLDatabaseConfigurationHelper::getDatabaseVersion()
2010-05-26 05:11:14 +00:00
Sean Harvey
a0768ec44d
MINOR Re-added in function_exists() for sqlsrv_num_rows() for backwards compatability with sqlsrv 1.0, added a warning that it'll only work on cursors other than forward only
2010-05-19 12:13:33 +00:00
Sean Harvey
888dc64c0a
BUGFIX MSSQLDatabase::searchEngine() no longer relies on MSSQLQuery::numRecords() which doesn't always work properly anyway, instead it counts if the record can be viewed and was pushed into the result DataObjectSet
2010-05-19 12:11:33 +00:00
Sean Harvey
07c4800374
API CHANGE Removed MSSQLQuery::forceNumRows which was a workaround for a lack of sqlsrv_num_rows() which exists as of sqlsrv 1.1 (current version)
2010-05-19 11:37:43 +00:00
Sean Harvey
075f4e53b9
MINOR Code tidy up in MSSQLDatabase
2010-05-19 11:06:35 +00:00
Sean Harvey
530a780a90
API CHANGE Removed MSSQLDatabase::escape_character() which doesn't need to belong on the database
2010-05-19 10:48:19 +00:00
Sean Harvey
d667b49f5f
MINOR Removed unused MSSQLDatabase::fulltext() method which did nothing but echo a debug statement
2010-05-19 10:45:30 +00:00
Sean Harvey
b5edca6f91
BUGFIX MSSQLDatabase::formattedDatetimeClause() should start the epoch at 1/1/1970 12:00 instead of 00:00 which it defaults at, otherwise comparing it to PHP produces a full 24 hour time difference
2010-05-19 10:25:46 +00:00
Sean Harvey
7fad117464
MINOR Removed unncessary use of LEFT() in MSSQLDatabase::datetimeIntervalClause()
2010-05-19 10:09:51 +00:00
Sean Harvey
39576dd4e0
BUGFIX MSSQLDatabase date formatting uses style code 120 which represents a typical datetime format without millseconds
2010-05-18 10:47:05 +00:00
Sean Harvey
012849fad9
BUGFIX Fixed version not coming back from SQL Server, as it needs to be casted first
2010-05-13 21:52:57 +00:00
Sean Harvey
90e1e644c9
BUGFIX Fixed incorrect version in MSSQLDatabaseConfigurationHelper::requireDatabaseVersion()
2010-05-13 12:27:25 +00:00
Sean Harvey
104a242b97
ENHANCEMENT Added MSSQLDatabaseConfigurationHelper::requireDatabaseVersion() to check for SQL Server 2008 SP1 as a minimum requirement
2010-05-13 12:25:54 +00:00
Sean Harvey
cb499039ab
MINOR Better debugging output for failed queries
2010-05-11 00:12:13 +00:00
Sean Harvey
69ec2c12c9
BUGFIX Fixed error when mssql functions not available
2010-05-10 23:47:44 +00:00
Sean Harvey
28434a195d
MINOR Better debugging in MSSQLDatabase::query()
2010-05-10 22:56:43 +00:00
Sean Harvey
572d025029
ENHANCEMENT MSSQLDatabase::text() and MSSQLDatabase::varchar() now use nvarchar which plays along better with UTF-8 characters
2010-05-10 04:45:54 +00:00
Ingo Schommer
2329ac93a5
BUGFIX Quoting of database name in MSSQLDatabase->allTablesSQL()
2010-04-29 23:01:33 +00:00
Sean Harvey
0307d40a61
BUGFIX Float should always be not null and default 0 in the database
2010-04-13 05:38:01 +00:00
Sean Harvey
93c87b4671
BUGFIX Added missing dbDataType method to MSSQLDatabase
2010-04-07 02:46:28 +00:00
Sean Harvey
df785ecbbf
BUGFIX MSSQLDatabaseConfigurationHelper didn't detect existing databases using sqlsrv driver properly
2010-03-11 20:09:00 +00:00
Sean Harvey
f5ea92fbd8
MINOR Cleanup of MSSQLAzureDatabase::selectDatabase()
2010-03-11 09:52:16 +00:00
Sean Harvey
23b27e4d9f
MINOR Cleanup of MSSQLAzureDatabase::selectDatabase()
2010-03-11 09:51:33 +00:00
Sean Harvey
fd47409602
MINOR Cast MSSQLDatabase::fulltextEnabled() as boolean
2010-03-11 09:46:16 +00:00
Sean Harvey
a9c6c54f4c
MINOR Reverted last commit
2010-03-11 09:44:51 +00:00
Sean Harvey
2013c70090
MINOR Small improvement to ini_get() check in MSSQLDatabase::__construct()
2010-03-11 09:41:53 +00:00
Sean Harvey
f1d6819da4
MINOR Partially reverted changes to MSSQLDatabase::affectedRows() in r100630
2010-03-11 08:47:04 +00:00
Sean Harvey
cd0e39c554
MINOR Removed MSSQLDatabase::tableDetails() - there is no base API for this, and it isn't implemented
2010-03-11 08:41:37 +00:00
Sean Harvey
661ce65d24
BUGFIX Proper use of sqlsrv_rows_affected()
2010-03-08 20:15:27 +00:00
Sean Harvey
036570e3c1
ENHANCEMENT Expose errors as they are available with sqlsrv driver in MSSQLDatabaseConfigurationHelper
2010-03-05 21:22:54 +00:00
Sean Harvey
9c4f25b43f
ENHANCEMENT Added additional error message pass through on the configuration helper for SQL Server
2010-03-05 04:24:53 +00:00
Sean Harvey
a37fd93c37
BUGFIX Stop sqlsrv warnings from being returned as errors to keep it in line with mssql functions
2010-03-05 02:40:20 +00:00
Sean Harvey
84aed0d9c3
BUGFIX Don't show search result items in MSSQLDatabase::searchEngine() that can't be viewed
2010-02-25 02:40:26 +00:00
Sean Harvey
d09acc0cbe
BUGFIX MSSQLDatabase::fullTextEnabled() should be cached so it doesn't have to query it all the time and slow down the database when dev/build occurs
2010-02-23 01:23:42 +00:00
Sean Harvey
5667388908
BUGFIX MSSQLDatabase::fullTextEnabled() should check that full-text capability is installed properly instead of just checking the status of it on the database
2010-02-11 23:09:37 +00:00
Sean Harvey
9779e0a58b
MINOR Fixed missing connection required for testing credentials
2010-02-11 11:52:12 +00:00
Sean Harvey
9e9bd677f6
MINOR Removed return of connection which is not used any longer
2010-02-11 10:08:21 +00:00
Sean Harvey
50f8ee7d6a
MINOR Renamed variables and keys to conincide with r98795
2010-02-11 09:59:52 +00:00
Sean Harvey
68757c72a6
FEATURE Added MSSQLDatabaseConfigurationHelper which is related to the installer
2010-02-11 07:38:10 +00:00
Sean Harvey
a2c2b3ebc0
BUGFIX Added MSSQLDatabase::set() - it doesn't do anything different to enum at the moment
2010-02-07 01:59:13 +00:00
Andreas Piening
6b82e2b1c2
MINOR: cast to datetime for higher precision
2010-02-04 04:53:25 +00:00
Sean Harvey
ab1b49fdf0
MINOR Removed query to enable fulltext each time MSSQLDatabase::createFullTextCatalog() was called - it's already enabled on databases where fulltext is supported
2010-02-03 08:24:33 +00:00
Sean Harvey
9bbe3603ee
BUGFIX Check value() return on MSSQLDatabase::fullTextEnabled()
2010-02-03 08:13:41 +00:00
Sean Harvey
adef3ced70
ENHANCEMENT Automatic checking of fulltext support by looking into the sys.databases table for MSSQLDatabase
2010-02-03 08:11:31 +00:00
Sean Harvey
7d67d25402
MINOR Changed MSSQLDatabase::now() block comment to be more useful
2010-02-03 07:53:08 +00:00
Sean Harvey
de7068d591
MINOR Removed redundant code from various MSSQLDatabase methods - it is now more inline with MySQLDatabase
2010-02-03 07:50:29 +00:00
Sean Harvey
b8b85a12a2
ENHANCEMENT MSSQLDatabase::decimal() field type now accepts user defined default values if it's available
2010-02-03 07:27:50 +00:00
Andreas Piening
9c1bda45ff
FEATURE: added datetime helper functions
2010-02-03 05:01:37 +00:00
Sean Harvey
27975ad20f
BUGFIX Fixed error when connecting to the database
2010-02-02 02:41:52 +00:00
Sean Harvey
6f42abda19
MINOR Fixed error
2010-02-02 02:34:40 +00:00
Sean Harvey
72a1381455
MINOR Changed the way MSSQLAzureDatabase connects
2010-02-02 02:30:50 +00:00
Sean Harvey
2a1cee6f3a
ENHANCEMENT Added MSSQLAzureDatabase->selectDatabase() support - it doesn't work the same way as SQL Server, we have to re-create the database connection
2010-02-02 02:19:43 +00:00
Sean Harvey
adb7369f5f
MINOR Removed MSSQLDatabase::$mssqlVersion - it's not used
2010-02-02 02:08:02 +00:00
Sean Harvey
4b3d185c67
FEATURE Added MSSQLAzureDatabase - subclass of MSSQLDatabase which has a different constructor for initialising the database specifically for SQL Azure
2010-02-01 23:26:22 +00:00
Sean Harvey
b8b44eaef5
BUGFIX Fixed proper checking of $this->fullTextIndexExists() when checking for indexes - NULL case means it's fulltext isn't enabled
...
ENHANCEMENT Support for only one active result set when building a SQL Server database
ENHANCEMENT Removed deprecated two-part syntax for DROP INDEX and used ON instead
2010-02-01 23:24:02 +00:00
Sean Harvey
b7f44bf043
MINOR Ease up restrictions of private variables and methods on MSSQLDatabase - this allows for a subclass for a more specific subset of SQL Server functionality
2010-02-01 21:45:01 +00:00
Sean Harvey
05d2831fb9
BUGFIX Fixed conflict of temp table creation between sites in MSSQLDatabase::createTable() by randomizing the table name
2009-12-15 00:58:58 +00:00
Sean Harvey
7e01c97e53
MINOR Use $this->query instead of DB::query() for instance MSSQLDatabase::createTable() temp table drop queries
2009-12-15 00:19:37 +00:00
Sean Harvey
6ae790f3a3
BUGFIX MSSQL stores temporary tables in the "tempdb" database, so special requirements are needed to make this work correctly with SapphireTest assumptions that this table exists in the same database as the project
2009-12-14 23:57:30 +00:00
Sean Harvey
6bfa6e9d0f
BUGFIX Make use of fulltextIndexExists() in MSSQLDatabase::getIndexSqlDefinition() instead of issuing it's own query to do so
2009-12-08 20:53:15 +00:00
Sean Harvey
3bba7b9ef1
ENHANCEMENT Added MSSQLDatabase::fulltextIndexExists() to check if an index exists before dropping it in MSSQLDatabase::alterTableAlterColumn()
...
BUGFIX Fixed alterting field types with a fulltext index on a table - an error would complain that a fulltext index exists, which needs to be dropped before the column can be altered
2009-12-07 05:38:26 +00:00
Sean Harvey
5bd3bcac67
BUGFIX Ensure that the ID is returned as a string when coming out of the database using the mssql_*() functions. This is NOT set to an integer, because there are many places in the sapphire framework that expect ID to be a string
2009-11-13 03:46:43 +00:00