14 min read

Version 3.11.1 released

Note that this is effectively 3.11.0 from last week, with a critical bug fix on top + some other additional fixes.

Note 2 - If you’re using Dark Mode on macOS Mojave, Do Not download this release. Dark Mode support is broken (badly) on MacOS. It should (hopefully) be fixed in the next point release.

Highlights

  • DBHub.io improvements
  • CSV import: speed, memory usage, usability, type detection and new default rules
  • Attach databases
  • Menu options for filtering
  • JSON and XML editors
  • Improvements to the plot UI
  • Better copy & paste support
  • Dark theme support on Linux
    • Dark mode support for windows and macOS isn’t working yet. 😦
  • Multi-threaded loading of data
  • Default quotes changed to double quotes
  • Add Record dialog
  • Printing support
  • The math extensions for SQLite are included in the windows and macOS installers

Downloads

SHA256SUMS

  • DB.Browser.for.SQLite-3.11.1-win32.msi
    • 76076d5c20240479238705f2211cad709f23c31cabe1682e2953bf6a7168b8d0
  • DB.Browser.for.SQLite-3.11.1-win32.zip
    • 558cb41445f0bdd31605aaeb52264ae9839b9e21aa75369a51352956966700fc
  • DB.Browser.for.SQLite-3.11.1-win64.msi
    • ffe1f44f10d49c9d382e66b951125ae1ee10d4bce93e5a32dbb8547d6bf7122f
  • DB.Browser.for.SQLite-3.11.1-win64.zip
    • a648b8faffc6da3fcf761f921270de2a2871d4116e2f7baf5e3b0280a538164c
  • DB.Browser.for.SQLite-3.11.1v2.dmg
    • b0ee5b73b9c6305de79640f651ba59edd32c6a94c2245a2bda01ae8091a69b48

Important Notes

  • This release includes SQLCipher 4.0.1, providing even stronger encryption than the previous release.
    • To open a database encrypted with a previous release, make sure to choose the “SQLCipher 3 defaults” in the dialog which asks for the encryption passphrase.
  • Our project file format has changed, to make it easier to modify with external tools.
    • Older format files are loaded fine, but all saving of project files is done using the new project file format.

Notes on the windows installers

We’ve moved to providing MSI based installers, instead of the previous .exe ones. These new installers include both SQLite and SQLCipher (for optional encryption):

DB.Browser.for.SQLite-3.11.1-win32.msi
DB.Browser.for.SQLite-3.11.1-win64.msi

These MSI based installers will automatically detect the previous release of DB4S (3.10.1) and remove it before upgrading. If you’re using one of the 3.11.0 alpha/betas, or an older version of DB4S than 3.10.1, you’ll need to manually remove it first before the upgrade.

Additionally, there’s now a .zip version of each. That’s useful for people needing to run DB Browser for SQLite without installing it first.

DB.Browser.for.SQLite-3.11.1-win32.zip
DB.Browser.for.SQLite-3.11.1-win64.zip

If you’re not sure which one to get, try the .msi version first. 😄

Note on the macOS installer

The macOS installation now includes the SQLite math extensions (math.dylib), located in the Contents/Extensions/ folder inside DB Browser for SQLite.app.

  • To use it, you’ll need to either manually load it (Tools → Load Extension), or tell DB4S to automatically load it every time (Preferences → Extensions).

  • macOS doesn’t easily allow going inside .app folders in file selection dialogs. To navigate to the correct folder you’ll probably need to press Shift (⇧)+Command (⌘)+g when the file selection dialog is open, then give it the path of /Applications/DB Browser for SQLite.app/Contents/Extensions.


Change Log

Bug fixes and enhancements since 3.11.0

  • DB Browser Crashes When Importing Its Own .sql dump (#1045)
  • Updated query optimisations (#1161)
  • Network inaccessible error when using a WiFi network (#1595)
  • “determining row count” displays forever in Browse Data tab (#1654)
  • About Info - display 32bit vs 64bit (#1660)
  • Allow bottom editor of Execute SQL tab to grow taller (#1670)
  • TEXT values show as BLOB (#1731)
  • Error encrypting in 3.11.0 (#1732)
  • It’s not possible to modify some tables (#1733)
  • Class ‘NullLineEdit’ lacks Q_OBJECT macro (#1740)
  • Initial fix for Dark mode problem on macOS Mojave (#1751, c7dd272)
  • Include SQLite 3.27.1 instead of SQLite 3.26.0

Enhancements

  • Add menu option for attaching database and allow usage of attached databases throughout the entire UI (532fcd3, 44eb2d4, fbaf78e, 315019d, 1a3e3d3, ea1659e, a5ca756, 7db96cd, 72d64ed, f01ad40, 3e02420, #1131, #1132, #1133)
  • Make import of multiple CSV files easier to use (#1121)
  • Optimise the Import CSV dialog for better usability (#1072)
  • Improve speed of preview table for large fields in the Import CSV dialog (#720)
  • Speed up CSV import a lot and reduce its memory usage (6432517, b7a00d3, 6ed8080, 0eb1f65, 659f38e, ed9fda2)
  • All sorts of improvements for tracking dbhub.io databases and pushing them back to the cloud (8a540a2, fef884a, f18064f, b2ddcdd, f926a67, 8c0e4bf, c692ae0, 64b3341, d738597, 24ee209, a1855d8, eff92c2, #1136)
  • Move button for saving Execute SQL results to the toolbar (#1122)
  • Rearrange display format list for better usability (31e499d)
  • Add menu option to hide selected columns (and unhide them) in the Browse Data view (#1135), d4e228d)
  • Add automatic type detection to the CSV import (#1003), #1382)
  • Improve splitters in Execute SQL tab (#380)
  • New menu options for using a value as a filter in the Browse Data tab, and support all filter operators for strings (#1182, #1463)
  • Allow renaming SQL tabs by double clicking their title (#1186)
  • Add support for filtering for empty strings in the Browse Data tab (#1189)
  • Add a new menu option for also copying the headers to the clipboard (#1058)
  • Add a search bar (Ctrl+F) to Execute SQL editors (#191)
  • Add a find and replace dialog (Ctrl+H) to all SQL editors (#191)
  • It’s now possible to select points in a plot and the corresponding rows in the table will be selected (e8e5671)
  • Show number of records to delete in the Delete Record button caption (5fbf5ca)
  • Add new display formats (46ec019, #1213, #1467)
  • Add special editor for JSON data in the Edit Cell dialog (#1173)
  • Add special editor for XML data in the Edit Cell dialog (#1253)
  • Use HTML when copying table data to the clipboard. This way less data is lost when pasting to spreadsheet applications (e60e9ff)
  • Some improvements to the plot UI including zooming, dragging and copying the plot to the clipboard (ade5627, #1245, cef1e90, #950, #1258, e34d360, #838, #1271, b2fbf45, #1310, c4109e6)
  • Some minor improvements to the Execute SQL UI (87e1b9b, 6d44c6d)
  • Allow pasting a value into multiple cells at once (0d7ca9b)
  • Allow changing the font of the result view in the Execute SQL tab (#1240)
  • Add a new button to the Browse Data tab to create a view from the current settings (#1246)
  • Add two new toolbar for Extra actions and for Project actions and add some more icons to the existing toolbars and menus (#331)
  • Allow configuration of BLOB text and style for the Browse Data tab (#1263)
  • Add a new dialog for managing database file extensions (#659)
  • Add possibility to drag and drop fields from the DB Schema dock to the SQL text editors (#119, #1250)
  • Add a Delete Record(s) option to the context menu of the table rows in the Browse Data tab(#1283)
  • Add a new –read-only command line option (#1265)
  • Allow duplicating multiple records at once (#1090)
  • Auto complete SQL keywords in upper case and add an option for it in the Preferences dialog (#1238, #1287)
  • Respect the ORDER BY clause when plotting a table view (#821, #838)
  • Also auto complete column names when they are not preceded by their table name (#1242)
  • Add bar charts to the plot dock (#1302)
  • Allow adding a legend to the plot (#1302)
  • Add “What’s This” popups in some more places (52ae85d, 2c9cf75)
  • Avoid any hard coded colours and query system colours wherever possible. In practice this adds support for dark themes (#1324)
  • Add new option for setting the line wrap in editors (#1173)
  • When clicking the Report Bug menu item some system information are included automatically (#1386)
  • When an entire row is selected and you press the Delete key, the row is now deleted (#1391)
  • Change the rules for the CSV import and add a couple of options to override them (#1395)
  • Add a new menu item to export the current table view with all its settings to a CSV file (#1402)
  • Add support for deleting rows from views with editing unlocked (#141)
  • Add menu option to copy selection in table view as SQL statements (#1422)
  • Move loading of table records into a separate thread for better UI responsiveness (#1394)
  • Change the quotes for SQL identifiers from grave to double quotes and add an option to the Preferences dialog for it (#1436)
  • Change Open Database toolbar action to open a popup menu with an extra option to open a database in read-only mode (#1432)
  • Comments containing filename, line number and results of the executed statements are added to the “User” part of the SQL log dock (#1448)
  • Look for a dotenv file with a stored password when trying to open an encrypted database (#1404)
  • Make the Unlock View Editing dialog easier to use (241372e)
  • Add support for creating and editing in-memory databases (#335, #1492)
  • Menu restructured, Tools menu added (#1434)
  • Add case_sensitive_like pragma to the Edit Pragmas tab and save it to the project file (#1494, c9d651c)
  • When adding an empty row fails open a new Add Record dialog instead in the Browse Data tab. Also make the new dialog available by a new button (#530, #1477)
  • Store the values of all pragmas which aren’t stored in the database in the project files (#1518)
  • Add schema names to the auto completion list of names and allow completion of schema.table.field (#1433)
  • Some new configuration options for the drag and drop of item names from the DB Schema dock (#1433, #1534)
  • Preselect file format filter depending on the current data type when exporting cell contents to a file (#1535)
  • Allow saving the hex editor contents when exporting binary cell contents to a file and allow copying the same data to the clipboard (#1438, #1485)
  • Add printing support to text and hex editors, plots, Database Structure tab, Browse Data tab and Execute SQL tabs (#1525)
  • Add some new menu items for optimising and checking the integrity of the database (#1435)
  • Save attached databases in the project file (#1532)
  • Add basic support for window functions (7e23214, 517743f)
  • Add an optional auto completion popup to the Browse Data tab which shows up when editing a cell (e1101ae, 04f27cc, 88d1cbc, b4b933c)
  • Some polishing of the main window UI (#420, f42b614)
  • Automatically preselect correct editor depending on the detected data type in the Edit Cell dialog (#1537)
  • Change project file format to support multiple sort columns (#1593)
  • The SQL function load_extension() is only enabled when explicitly requested by the user in a new setting (#1558
  • Command line option for running with some setting set to a given value (#1588)

Bug fixes

  • Avoid extra spaces when formatting SQL statements (18bcbf1)
  • Fix dbhub.io bugs (4dc5286)
  • Fix detection of image data in Edit Cell dialog (#1138, #1159)
  • Fix Vacuum dialog (c616b39)
  • Allow selecting text in Edit Cell dialog even if database is read only (#1123, #1461)
  • Clear filters in Browse Data tab when table structure changes (#1020)
  • Add support for parsing multiple foreign keys in column constraints (677d360)
  • Fix memory leaks (28446a4)
  • Fix input of custom data types in Edit Table dialog so it doesn’t require you to hit Enter (#1147)
  • Don’t query foreign key pragma all the time in Edit Table dialog (#1130)
  • Avoid unnecessary queries in Browse Data tab (#1108, #1187)
  • Support UTF16 strings in the default collation in DB4S (#1172)
  • Never override the built-in collations (#1172)
  • Fix problems when opening a database by drag and drop (9cff69f, #1236)
  • Fix crash when trying to edit the display format of a view column (9fd4ebe)
  • Better error and changes detection in Execute SQL tab (#1181, #1185)
  • Fix parsing of SQL statements on systems with some locales like Turkish (#1194)
  • Fix some high DPI issues (#1184)
  • Improve BLOB detection in Browse Data tab (9b30940)
  • Fix changing table name to a name that only differs in case (#1200)
  • Fix progress dialog of CSV import for very large files (#1212)
  • Select current display format when opening the Custom Display Format dialog (#1202)
  • Only display the horizontal scrollbar in the SQL editor when it’s necessary (d8aeae1)
  • Show keyboard shortcuts in some places where they were missing (9ce4b23)
  • Fix restoring previous settings in the Export SQL dialog (ccb1fd4)
  • Never use quotes when copying data from the table view to the text clipboard (#1244)
  • Fix crash when clicking Save SQL file button when no SQL tab is opened (#1248)
  • Fix pasting table data from spreadsheet applications which put an extra line break at the end of the text (#1244)
  • Fix pasting when actually no data is in the clipboard (9db70e0)
  • Copying and pasting between different tables and copying binary data in the Browse Data tab is now always lossless (47b0749, #1257)
  • Fix copying binary data (316860a)
  • Don’t ignore possible error messages when duplicating a record (#1255)
  • Don’t truncate data at 32768 characters when editing it in directly in the table widget (#1281)
  • Fix binary data detection in table views (#1279, 27c6579, c9c848e, feda408)
  • Allow unsetting the encoding of a table (#1279)
  • Fix drag and drop of tables from the Schema tab (117af5a)
  • Fix style of web links in UI (#1286)
  • Fix execution of some SQL statements with comments and/or line breaks in them (#1270, #1334)
  • Add support for tables with ON CONFLICT clauses for their primary key (743e798)
  • Fix crash when pressing Tab at the last cell of a view (#1289)
  • Fix crash when trying to add an index to a database without any tables (#1293)
  • Fix problems after drag & drop of tables onto the structure view (#1288)
  • Copy original statement when clicking the Copy Create Statement menu option (#1300)
  • Fix updating and deleting from tables without rowid if the primary key value contains a “’” character (#1332)
  • Don’t show “Show Rowid” menu option for tables without rowid (#1332)
  • Our project file format is now text only. This helps if you want to edit it in a text editor (#1306)
  • Don’t commit the current transaction when trying to change the defer_foreign_keys PRAGMA (aebfc51)
  • Fix error messages when importing SQL files (431c671)
  • Show icons in Export SQL dialog (28baba8)
  • Only allow exporting tables in Export SQL dialog (b384027)
  • Tweak order of statements in exported SQL file for less import problems (b6c0560)
  • Fix text of toolbar actions for deleting and modifying objects other than tables (13d9f98)
  • Remember “primary key” of a view unlocked for editing when changing to another object and back (ea25618)
  • Only allow powers of two for page size in Cipher Settings dialog and Edit Pragma tab (#1405, 8a07f0e)
  • Make sure the insert and delete record buttons are only enabled if they can be used (115d1f1)
  • Suggest correct file extensions when export content of a cell to a file (885f4f7)
  • Make sure to reset results view even when a query didn’t return any rows (#1437)
  • Auto suggest encodings in Select Encoding dialog (588363b)
  • Fix parsing of some complex SQL expressions in CREATE statements and fix parsing of CHECK constraints (#1454, c150d1a)
  • Fix multiple SQL statements in Execute SQL tab being split up at the wrong position (#1470)
  • Don’t allow editing the SQL preview in the Create Index dialog (7a9f310)
  • When jumping to a row referenced to by a foreign key by using Ctrl+Shift+Click, perform an exact search instead of a LIKE search (d50a27a)
  • Fix crash when browsing a table, then deleting it in another tab and then switching back to the Browse Data tab (2701223)
  • Fix string quotes in Custom Display Format dialog (b6f47f9)
  • Prevent possible data loss when editing table with foreign keys enabled and ON DELETE CASCADE references (#1481)
  • Fix view when loading a project file while being in the Edit Pragma tab (a23c0a0)
  • Avoid confusion about the SQLCipher version in the About dialog (#1474)
  • Don’t remove a record from the table view temporarily when deleting it has failed (#1511)
  • Show better error messages when importing SQL files (#1519)
  • Defer foreign keys when importing SQL files to avoid import issues for some files (#1519)
  • Fix editing of auto_vacuum pragma via the UI (#1518)
  • Fix initial loading of databases which depend on extension functions to be present (f3e6aec)
  • Fix cursor after SQL import finished (#1526)
  • Fix completion of quoted identifiers in SQL editor (#1433)
  • Fix positioning of cursor in Execute SQL tab when there is an error near a multi-byte character (99c53a4)
  • Fix some possible crashes when loading an invalid project file (717ff07)
  • Fix auto completion of keyword ROWID (78ae2c3)
  • Better error messages when editing the definition of a table fails (#1547)
  • Fix auto completion not working in some cases until you refresh the database (#1549)
  • Avoid unnecessary queries in the Browse Data tab in some cases (c78c03b)
  • Fix inserting, deleting and editing of rows in WITHOUT ROWID tables with a primary key of TEXT type (#1559)
  • Better error handling in import CSV dialog (#1590)
  • Fix possible resource leaks (#1691)

Platform specific

Windows

  • Use MSI installers (#1400)
  • Make sure the image plugins are loaded properly (#1188, 9016bf6)
  • Also install license files (12ee94c)
  • Add version info to Windows executables (#1387)
  • Fix line breaks in SQL export (#1502)

macOS

  • Work around a Qt bug which causes high pings for Wifi connections (#1209)
  • Add a workaround to improve rendering performance on 4k/5k resolutions (#1233)
  • Add .sqlite, .db3 and .sqlite3 to the list of file associations (28f6c6e, 3008747)
  • Fix shortcut name for following a foreign key (#1539)

Linux

  • Make install paths configurable for qmake build (#1443)

Gnome

  • Fix problem with switching the workspace on Gnome (#934)

Translations

  • Fix call tips in SQL editor for languages with non-Latin scripts (#1107, #1206)
  • Never translate the name of the pragmas in the Edit Pragma tab (9a30e6c)
  • Spanish translation updated (#1190, 2b6f0d7, aa82b52, 636136a)
  • German translation updated (09e170f)
  • Korean translation updated (8c85ff9)
  • Polish translation added (#1456)
  • French translation updated (b7dbfc8)
  • Italian translation added (#1705)
  • Czech translation updated (#1710)
  • Portuguese translation updated (#1707)
  • Simplified Chinese translation updated (#1594)
  • Russian translation updated (#1581)
  • Arabic translation updated (170fb69)

Packaging and Building

  • Fix code to work with Qt 5.10 and later (e6a4326, 189b750, 39302f5, 72506fb, #1475)
  • Update the bundled qcustomplot librar to version 2.0.0
  • Silence some cmake warnings (#635, #1143)
  • Show the build date of the nightly builds in the About dialog (0bc430b)
  • Restored Qt 5.2 compatibility (#1298)