-
Notifications
You must be signed in to change notification settings - Fork 0
Kohana Issues
cbandy edited this page Dec 1, 2011
·
20 revisions
Issue | Version | Status | Real-Database Solution |
---|---|---|---|
#1893 Error in PDO sqlite | 3.0.0 | Invalid | PDO_SQLite driver implements charset() |
#1927 Missing ; in Expression | 3.0.0 | Fixed | Unit tests |
#1945 Raw query type | 3.0.1 | Won’t | Database::execute() et al. execute raw SQL |
#1957 table prefix with quote_identifier() | 3.0.0 | Fixed | Split Database::quote_identifier() into quote_column() , quote_table() and quote_identifier() |
#1998 JOIN USING in builder | 3.1.0 | Fixed | SQL_Table_Reference::using() |
#2005 Default result $as_object = FALSE | 3.0.9 | Fixed | Default argument value in Database::execute_query() |
#2009 Support OR in JOIN ON conditions | 3.3.0 | - |
SQL_Table_Reference::on() accepts SQL_Conditions |
#2024 count_records() missing parameter | 3.0.0 | Fixed | Unit tests |
#2069 BETWEEN condition | 3.0.2 | Fixed | Unit tests |
#2130 alias support in quote_table() | 3.0.1 | Fixed | SQL_Alias class |
#2188 PDO + PgSQL last insert id | 3.2.0 | Won’t | Native PgSQL driver |
#2219 allow OFFSET without LIMIT | 3.0.3 | Won’t | Native builders implement as necessary |
#2233 from()→from() should not list a table twice | 3.0.1 | Fixed | from() overwrites the table reference |
#2239 SELECT query drops fields | 3.0.1 | Fixed | Selected columns are not manipulated by SQL_DML_Select |
#2261 Standardized introspection | 3.0.2 | Fixed | Database_iIntrospect driver interface closely matches the SQL-92 Information Schema |
#2264 Result::as_array() ignores $value | 3.0.2 | Fixed | Unit tests |
#2273 PgSQL support | 3.1.0 | Won’t | Native PgSQL driver |
#2278 Transaction support | 3.1.0 | Fixed | Database::begin() , Database::commit() and Database::rollback() |
#2297 Allow Result serialization | 3.0.5 | Fixed | Database_Result::serializable() cbdf168a |
#2308 table prefix ignored in introspection | 3.0.2 | Fixed | Unit tests |
#2363 return the right length for decimal data | 3.0.3 | Fixed | Unit tests |
#2366 cannot INSERT INTO .. SELECT | 3.0.3 | Fixed | Unit tests |
#2376 Regression: not quoting booleans | 3.0.4 | Fixed | Unit tests |
#2377 schema support | 3.1.0 | Fixed | SQL_Identifier allows unlimited number of namespaces |
#2382 Move column types to config | 3.0.4 | Fixed | Drivers can override SQL::datatype() to handle non-standard types |
#2383 Consistent introspection | 3.3.0 | – | Database_iIntrospect driver interface closely matches the SQL-92 Information Schema |
#2388 query builder does not support parameter binding | 3.0.4 | Fixed | Builders derive from SQL_Expression which has parameter binding |
#2399 cannot assign SELECT columns using array | 3.0.4 | Fixed | SQL_DML_Select::columns() accepts an array of columns |
#2413 list_tables() throws exception | 3.0.4 | Fixed | Unit tests |
#2466 Database_Result as_array() should rewind | 3.0.4 | Fixed | Database_Result::as_array() does not change the iterator position |
#2467 ODBC cannot escape values | 3.0.4 | Invalid | Builders are passed directly to Database::execute() et al. The driver can turn this into parameterized SQL when necessary |
#2481 Allow DELETE .. LIMIT | 3.0.4 | Fixed | Allowed in SQL_DML_Delete with documented RDBMS support |
#2549 UNION support | 3.1.0 | Fixed | SQL_DML_Set::union() |
#2636 Incorrect SQL generated when escaping floats | 3.0.4 | Fixed | Unit tests. Database_Numeric can be used for advanced formatting |
#2741 count_last_query() | 3.0.5 | Fixed | Builders can be reused with LIMIT and OFFSET unset |
#2753 Dynamically set the default database instance | 3.0.5 | Fixed | The ‘default’ Database instance can be given any configuration array in Database::instance() |
#2760 Allow cache to be cleared and fetched in one call | 3.2.0 | Fixed | Database_Query_Cached has methods for each use case. set() will execute and cache unconditionally 2fc65909 |
#2761 Query should not require a query type | 3.1.0 | Invalid | Split Database::query() into Database::execute_command() , Database::execute_insert() and Database::execute_query() |
#2780 table prefixes not handled correctly in JOIN | 3.0.8 | Fixed | SQL_Table receives the table prefix while SQL_Identifier does not |
#2799 MySQL disconnect() does not return correct boolean | 3.0.5 | Fixed | Database::disconnect() throws a Database_Exception upon error |
#2842 Allow single expressions in WHERE | 3.3.0 | – | SQL_DML_Select::where() accepts a single SQL_Expression |
#2851 INSERT builder not replacing placeholders with NULL | 3.0.5 | Fixed | Unit tests |
#2859 Automatically change = NULL to IS NULL | 3.0.6 | Fixed |
= and IS should not be interchanged. SQL_Identical expression handles such matching for NULL parameter values |
#2881 Query::cached() does not use default lifetime | 3.0.9 | Fixed | Database_Query_Cached::execute() uses the Cache driver default when no lifetime is passed |
#2883 Allow clearing cached result of query object | 3.1.0 | Fixed | Database_Query_Cached::delete() |
#2915 Lacking identifier option of PDO | 3.0.6 | Fixed | Every driver supports the 'quote_character' configuration option |
#2931 NOT condition helpers | 3.3.0 | – | SQL_Conditions::not() et al. 6fab9e74 |
#2935 Reconnect support | 3.0.10 | Fixed | Connection credentials are allowed in a trace |
#2955 Ability to UPDATE and DELETE from multiple tables | 3.0.8 | Fixed | SQL_DML_Delete and SQL_DML_Update accept SQL_Table_Reference |
#2974 Allow values (not identifiers) in JOIN ON conditions | 3.0.8 | Invalid |
SQL_Table_Reference::on() accepts SQL_Conditions . Columns are distinguished from values using SQL_Column |
#2985 PDO + SQLite introspection | 3.0.8 | Won’t |
PDO_SQLite driver implements Database_iIntrospect |
#3011 Support UPDATE .. LIMIT | 3.0.8 | Fixed | Allowed in SQL_DML_Update with documented RDBMS support |
#3048 MSSQL SET NAMES error | 3.0.7 | Invalid | Character set configuration documented in each driver |
#3069 PDO should include prepare() | 3.1.0 | Won’t | Database_PDO::prepare() creates a PDOStatement from raw SQL |
#3076 Abstract query builder to support more than SQL | 3.3.0 | - | Each driver can override the builder factory methods |
#3095 Support OR in JOIN conditions | 3.3.0 | – | SQL_Table_Reference::on() accepts SQL_Conditions |
#3152 Throw Database_Exception instead of PDOException | 3.0.8 | Fixed | Unit tests |
#3156 and_where() should alias where() | – | Won’t | SQL_Conditions allows any logical operator and has helpers and_column() , or_column() , et al. |
#3165 Database::connect() should throw Database_Exception | 3.0.8 | Fixed | Unit tests |
#3204 current() broken with PDO | 3.0.9 | Fixed | Don’t call current() when the iterator is not valid() . get() and offsetGet() have defined behavior for invalid offsets |
#3227 Allow row result class to be passed in execute() | 3.2.0 | Fixed | Builders are passed directly to Database::execute() et al. |
#3305 exists() support in query builder | 3.0.9 | Fixed | SQL_Conditions::exists() accepts a query builder or raw SQL |
#3329 MySQL sql_mode in config | 3.2.0 | Fixed | Database_MySQL has a variables config option to set any number of session variables during connect() |
#3350 Move PDO driver to module | 3.1.0 | Won’t | Unit tests |
#3351 list table columns without the table_prefix | 3.0.10 | Fixed | Passing SQL_Identifier to table_columns() will not add the table_prefix |
#3356 Symbol for table prefix in raw SQL | 3.1.0 | Won’t | SQL_Expression with SQL_Table parameter |
#3389 Result::current() should return NULL | 3.1.0 | Fixed | Don’t call current() when the iterator is not valid() . get() and offsetGet() have defined behavior for invalid offsets |
#3394 Database::count_last_query() SQL injection | 3.1.0 | Fixed | Method removed. Builder components can be reset |
#3398 UPDATE .. ORDER BY | 3.0.9 | Fixed | Native builders for DELETE and UPDATE for MySQL |
#3443 query builder ON should support IN | 3.0.9 | Won’t |
SQL_Table_Reference::on() accepts SQL_Conditions |
#3412 PDO introspection | 3.3.0 | – | Introspection is an optional feature in the Database_iIntrospect interface |
#3429 Expression parameters | 3.2.0 | Fixed | SQL_Expression allows any type of parameter |
#3432 Nested transactions | 3.3.0 | – | 4ac9bc5a |
#3502 Getter/setter for PDO instance | 3.2.0 | Fixed | PDO SQLite driver exposes its native features e350bf9f |
#3569 Regression: Database subquery with aliases | 3.1.0 | – | Unit tests |
#3608 MySQL connect() errors | 3.0.12 | Fixed | Unit tests |
#3625 Creating tables in database | 3.3.0 | - |
SQL_DDL_Create_Table |
#3707 escape should not add quotes | 3.2.0 | Won’t | Not all drivers can escape values. Database_iEscape::escape_literal() adds quotes because PDO does |
#3735 Builders updated to allow unsetting LIMIT/OFFSET | 3.2.0 | Fixed | limit() and offset() can be reset with NULL on all builders |
#3862 Allow caching via Cache module | 3.3.0 | - |
Database_Query_Cached uses the Cache module d2ad6327 |
#3867 Query builder ignores JOINs for UPDATE/DELETE | 3.2.0 | Won’t | The syntax is not standard but is supported in the builders by using SQL_Table_Reference |
#3872 Make instance optional in compile() | – | – | Builders are compiled by Database::execute() et al. |
#3963 DB docs, “prepared statements” is misleading | 3.1.4 | - | Real prepared statements are handled by each driver natively |
#4032 Logic in execute() results in empty result sets being queried again | 3.1.4 | Fixed | Database_Query_Cached uses the Cache class to store results |
#4052 Ignore empty parentheses in or_where_close() / and_where_close() | 3.3.0 | – | SQL_Conditions::close_empty() 779b63ae |
#4078 PDO set charset is not compatible | 3.3.0 | – | Database::set_charset() is removed and proper configuration arguments are documented ff4e3662 |
#4103 Set MySQL session variables in a single statement | 3.2.0 | Fixed | 02ba3657 |
#4106 PDO driver for SQLite | 3.3.0 | – | PDO_SQLite driver |
#4342 Remove selected values | 3.3.0 | – | Reset by passing NULL to SQL_DML_Select::values() |
- #2077 – move Config_Database to database module
- #2647 – Session garbage collection
- #2667 – Session_Database missing parameter
- #2849 – Consistency when initializing classes with config dependencies
- #2852 – Enable caching at database-config level
- #2861 – list_columns() should return integer display width as well
- #3495 – Ability to remove “commands” from SQL builder
- #3842 – Easier syntax for where() and set() for inserts
- #3898 – Add support for MySQLi
- #4057 – Automatically handle aliases in GROUP BY, ORDER BY, WHERE and HAVING
- #4328 – Implement Log_Writer_Database with example schema