I have created a shapefile (point data) and wish to change some parameters in the files table data. I can edit the data and see the coresponding change in my my symbology. However, when I save the shapefile, the data and symbology revert back to the way it was before the edits. What am I doing wrong?

I have a shape file of a series of points. One column in my table has values between 1 and 6 that show up as color-coded points on my map. The data for the column came from a spreadsheet that I had joined with the shapefile. I was trying to update certain values in the column (I set the shapefile so I could amend it, opened the table and changed the value. The color of the point on my map changed, however, when I tried to save the changes, the color (and value) reverted to the previous settings. I did find a way to make it work. I amended my original spread sheet in Excel and exported it as a dbf. I then unjoined the dbf and shapefile and rejoined with the new data. Don't know if that's the correct way, but it worked.

  • 2
    which software?
    – underdark
    Feb 11, 2013 at 17:46
  • which application? In ArcGIS you require layer to create (.lyr) files for preserving symbology. Right Click the layer and save as layer.
    – Mapperz
    Feb 11, 2013 at 17:46
  • Sorry, that should be Quantum GIS.
    – PKappen
    Feb 11, 2013 at 18:02
  • 2
    I thnik we need to hear how you are editing, and what value you are editing, perhaps the field properties also.
    – Brad Nesom
    Feb 11, 2013 at 19:39
  • #Change all Values in a Field of an Attributtable #Here the first and the second Field with a part of the Layername in the First Field #and a Qvariant Value in the second field #Attention!!! All Field values will be overwritten #H.Wallwitz 12. Februar 2013 22:08 qgis.utils.iface from PyQt4.QtCore import * vlayer = qgis.utils.iface.activeLayer() #Ermittle den Layernamen ab der 3. Position nutzwert = vlayer.name() strlang = len(nutzwert) strteil = nutzwert[3:strlang] #-------------------------------------- feat = QgsFeature() attrs = feat.attributeMap() fid = 0 caps = layer.dataProvider().capabi
    – user15123
    Feb 12, 2013 at 21:33

2 Answers 2


I had the same issue from time to time. I found that it is best to open the attribute table, edit the data, save the data before closing the table, and then close. it should work. it is a glitch. but generally works right.

  • Thanks for the input. I tried it as you suggested, unfortunately, it still didn't work.
    – PKappen
    Feb 11, 2013 at 20:18
  • 5
    Also, remember to click away from the last field you edit before saving or the edited field won't be saved.
    – nhopton
    Feb 11, 2013 at 20:29
  • I found that making the column in the attribute table rather than in the layer settings, then editing the column in the attribute table. This worked for me when I had added a column in the layer settings then was unable to edit it in the attribute table. Not sure why this glitch was happening, but this solution worked for me. You may be able to transfer data into the new column from the one you are trying to edit.
    – Amroco
    Jun 1, 2017 at 21:32

It sounds like what you need to edit is actually the table not the shape file.
Otherwise you could export the shapefile again, after you join your table. you would
then have a shapefile with all the values from the join table. and your edit to the
shapefile should work correctly then.

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.