Example usage: I have a spatialite layer which contain my fiber optic cable routes. In that layer there is a column named 'Cable types' with coded integer data: 1 for aerial cable, 2 for underground cable... Now I want to send the spatialite database to a colleague. Is there anyway to preserve the meaning (description) of cable types without having to send the QGIS style file for that layer?
A couple of options:
- Create a non-spatial table called Cable Type in the spatailite database to store the interger and the value.
- Do 1. but create a view that joins the two tables together so your colleague gets the cable type name rather then the integer.
I don't think you need to bother with style files. If all of the project data is in a Spatialite database all you should need to do is send your colleague the database together with your QGIS project file (*.qgs). When your colleague opens the *.qgs file in QGIS the project should load, showing exactly the view that you saved, with the styles, labelling and so on, intact. For this to work, before you save the project you need to ensure that the *.sqlite file and the *.qgs file are in the same directory and that you save the project using relative addressing (I think this is the default nowadays).
Proof of concept (140 MB):
Why not just add an extra column, call UPDATE on the table for each integer value to set that column's value to some text matching the table, and then ship the result.