I'm a huge fan of being able to save default symbology to spatialite/GeoPackage tables, however, I don't like that when I import a table as a layer it takes on the name "database name table_name".

Is there a way of giving tables a default display name so that instead of it being called "database name table_name" it would be called "Default Display Name" instead when it is added to QGIS?

2 Answers 2


Use Layer Definition Files.

After you load the layer from the geopackage, go to Properties an change the 'Layer Name' value. then export your layer out as a Layer Definition File.

When you load the Layer Definition File, it will appear as per your changed Layer Name value.

This obviously won't work for the first time you load the layer. but it does encourage users to use qlr reference layers, which is preferable.

  • Thanks. It's not ideal but you are correct and that's a good idea. Nov 19, 2021 at 10:27

In QGIS 3.* I do not have this issue when I import the layer through the 'Data Source Manager Toolbar':

Add Spatialite Connection - Click on Table - Add

(The default name is the name of the table only)

However, I get your problem when I export a table in a a Spatialite database and it automatically loads as a layer. Then, 'database + table name' is the default display file name. In this case, you can change this on layer properties / Source / Layer name.

  • Thanks, adding it through the Data Source Manager is half a solution, it doesn't automatically add the database name. However I would like to have a default name set the same way that you can set default symbology if possible. Jul 17, 2019 at 10:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.