-
Notifications
You must be signed in to change notification settings - Fork 56
Release Notes
Miner adheres to Semantic Versioning.
March 29, 2014
-
set
now accepts an array of columns => values. - Added
values
method as an alias for setting an array of columns => values.
Thanks to Daniel Fort for the pull request!
December 7, 2013
- Duplicate JOINs are now prevented by checking that the table + alias is unique. (Thanks to Juan Cobacho for the pull request!)
November 18, 2013
- Composer now autoloads Miner.
September 29, 2013
-
quote
now returnsNULL
for null values instead of an empty string. (Thanks to detook for the pull request!)
October 4, 2012
- Fixed a bug where
getPlaceholderValues
didn't return a proper array if noSET
placeholders were set. (Thanks to fuutott for the pull request!)
September 17, 2012
QueryBuilder has been renamed Miner! As the project has progressed beyond SELECT
queries, the name QueryBuilder was no longer quite accurate, nor very fun or original.
The version number has also been reset to 0.9.0 to reflect where I consider the project to be in its roadmap. Why not 1.0.0? There are a number of important questions I'd like to answer and quickly iterate on that may require backward-incompatible changes, such as whether to generically support the SQL standard or specific implementations of SQL (like MySQL, PostgreSQL, SQLite). In terms of Semantic Versioning, I'd like to answer those questions before 1.0.0 and the requirement to increment the major version number with such drastic changes. Be assured, however, that the current code is very much production ready.
To upgrade:
- Replace
QueryBuilder
class/file name references withMiner
. - Replace calls to the
query
method withexecute
. - Replace calls to the
getQueryString
method withgetStatement
.
September 15, 2012
-
groupBy
no longer requires an order direction for improved compatibility with PostgreSQL.
September 2, 2012
- Added the ability to enable/disable automatic escaping of query values per-instance, as well as more granular per-value control. Enabled by default (for backwards compatibility), auto-escaping can be enabled/disabled by calling the new method
setAutoQuote
, or by passing a boolean as the second parameter when initializing (new QueryBuilder($PdoConnection, false)
). For more granular control, all methods that accept values (likewhere
,having
, andset
) include an optional$quote
parameter to override the default for that value.
July 26, 2012
-
getLimitString
now usesOFFSET
instead of a comma for PostgreSQL compatibility. - Added
ILIKE
comparison operator constant, also for PostgreSQL.
Thanks to phishncode for requesting and providing code for both.
June 27, 2012
- Added support for INSERT queries. New methods:
insert
,mergeInsertInto
,getInsert
,getInsertString
,set
,mergeSetInto
,getSetString
,getSetPlaceholderValues
. - Added support for REPLACE queries. New methods:
replace
,mergeReplaceInto
,getReplace
,getReplaceString
,set
,mergeSetInto
,getSetString
,getSetPlaceholderValues
. - Added support for UPDATE queries. New methods:
update
,mergeUpdateInto
,getUpdate
,getUpdateString
,set
,mergeSetInto
,getSetString
,getSetPlaceholderValues
. - Added support for DELETE queries. New methods:
delete
,mergeDeleteInto
,getDeleteString
. - Added
isSelect
,isInsert
,isReplace
,isUpdate
, andisDelete
methods for determining the type of query. - Added
mergeOptionsInto
andgetOptionsString
methods. - Added
mergeFromInto
method for merging the FROM table into another QueryBuilder. - Added
mergeLimitInto
method for merging the LIMIT into another QueryBuilder. -
getLimitString
no longer includes the offset if it's set to 0. - Fixed a bug where
mergeInto
failed to merge the FROM table for SELECT queries.
November 16, 2011
- First public release with documentation and "Getting Started" guide!