nette/database
Nette Database is a lightweight yet powerful PHP database layer with an intuitive query builder, safe parameter binding, and support for MySQL, PostgreSQL, SQLite, MS SQL, and Oracle. Clean API plus optional ORM-like conveniences make queries simple and secure.
This release brings a set of focused exception types that let you catch specific database failure modes (deadlocks, lock timeouts, check constraint violations, lost connections) instead of wrestling with generic driver errors. ActiveRow and Selection now expose getExplorer() for direct access to the underlying Explorer, and the reflection layer has been refactored for more consistent metadata across drivers.
ActiveRow and Selection now expose the underlying Explorer instance, no more jumping through hoops to get back to itgetIndexes SQL, parameterized SQLite PRAGMA queries, and ForeignKey::$name is now a non-nullable stringIN() inserts parameters directly and bypasses bindingGroupedSelection::refreshData()Selection::fixedAssoc() silently deprecatedfetchList() as alias for fetchFields() & shortcutsResultSet::fetchAssoc() returns associative array by default, added shortcutsconvertBoolean, convertDateTime, and convertDecimalConnection::getInsertId() now returns integersconvertBoolean and newDateTime (returns date as Nette\Database\DateTime) are enabled by defaultIRow and IRowContainerConnection::getPdo() and getDsn()fetchPairs() accepts callbacknormalizeRow(): removed extra float handling #307Helpers::detectType() supports 'INT UNSIGNED'MySqlDriver::initialize() removed support for 'utf8' charset before 5.5.3SqlsrvDriver::applyLimit() removed support for SQL Server < 2012normalizeRow() don't return small float as string #289getForeignKeys() #281ConnectionPanel::initialize() replaces Helpers::initializeTracy()getColumns() for materialized view tooqueryArgs() & ResultSet::getConnection() are silently deprecatedHelpers::initializeTracy() does not create a panel in production modebeginTransaction(), commit() & rollBack() calls are forbidden in transaction()Explorer::transaction() call can be nestedExplorer::transaction(): pass self as a callback argumentHelpers::initializeTracy() replaces createDebugPanel()For the details you can have a look at the diff.
compatible with PHP 8.0
[@Tracy](https://github.com/Tracy)\BlueScreen nette/di#245For the details you can have a look at the diff.
For the details you can have a look at the diff.
dumpSql() for bool parameters (#251)For the details you can have a look at the diff.
For the details you can have a look at the diff.
For the details you can have a look at the diff.
For the details you can have a look at the diff.
For the details you can have a look at the diff.
getBelongsToReference() return value fixFor the details you can have a look at the diff.
For the details you can have a look at the diff.
::intgetColumnTypes() to avoid excessive number of queries #212quote() throws exception on error (related to #202)For the details you can have a look at the diff.
fetchFields()bindValue() (possible BC break)quote() returns false for ODBC driver #202getLastQueryString()For the details you can have a look at the diff.
How can I help you explore Laravel packages today?