Editing

QGIS supports various capabilities for editing OGR, SpatiaLite, PostGIS, MSSQL Spatial and Oracle Spatial vector layers and tables.

Note

The procedure for editing GRASS layers is different - see Section Digitizing and editing a GRASS vector layer for details.

Tip

Concurrent Edits

This version of QGIS does not track if somebody else is editing a feature at the same time as you. The last person to save their edits wins.

Setting the Snapping Tolerance and Search Radius

Before we can edit vertices, we must set the snapping tolerance and search radius to a value that allows us an optimal editing of the vector layer geometries.

Snapping tolerance

Snapping tolerance is the distance QGIS uses to search for the closest vertex and/or segment you are trying to connect when you set a new vertex or move an existing vertex. If you aren’t within the snapping tolerance, QGIS will leave the vertex where you release the mouse button, instead of snapping it to an existing vertex and/or segment. The snapping tolerance setting affects all tools which work with tolerance.

  1. A general, project wide snapping tolerance can be defined choosing Settings ‣ mActionOptions Options. On Mac: go to QIS ‣ mActionOptions Preferences..., on Linux: Edit ‣ mActionOptions Options. In the Digitizing tab you can select between to vertex, to segment or to vertex and segment as default snap mode. You can also define a default snapping tolerance and a search radius for vertex edits. The tolerance can be set either in map units or in pixels. The advantage of choosing pixels, is that the snapping tolerance doesn’t have to be changed after zoom operations. In our small digitizing project (working with the Alaska dataset), we define the snapping units in feet. Your results may vary, but something on the order of 300ft should be fine at a scale of 1:10 000 should be a reasonable setting.
  2. A layer based snapping tolerance can be defined by choosing Settings ‣ (or File ‣) Snapping options... to enable and adjust snapping mode and tolerance on a layer basis (see figure_edit_1 ).

Note that this layer based snapping overrides the global snapping option set in the Digitizing tab. So if you need to edit one layer, and snap its vertices to another layer, then enable snapping only on the snap to layer, then decrease the global snapping tolerance to a smaller value. Furthermore, snapping will never occur to a layer which is not checked in the snapping options dialog, regardless of the global snapping tolerance. So be sure to mark the checkbox for those layers that you need to snap to.

Figure Edit 1:

../../../_images/editProjectSnapping.png

Edit snapping options on a layer basis nix

Search radius

Search radius is the distance QGIS uses to search for the closest vertex you are trying to move when you click on the map. If you aren’t within the search radius, QGIS won’t find and select any vertex for editing and it will pop up an annoying warning to that effect. Snap tolerance and search radius are set in map units or pixels, so you may find you need to experiment to get them set right. If you specify too big of a tolerance, QGIS may snap to the wrong vertex, especially if you are dealing with a large number of vertices in close proximity. Set search radius too small and it won’t find anything to move.

The search radius for vertex edits in layer units can be defined in the Digitizing tab under Settings ‣ mActionOptions Options. The same place where you define the general, project wide snapping tolerance.

Zooming and Panning

Before editing a layer, you should zoom in to your area of interest. This avoids waiting while all the vertex markers are rendered across the entire layer.

Apart from using the mActionPan pan and mActionZoomIn zoom-in / mActionZoomOut zoom-out icons on the toolbar with the mouse, navigating can also be done with the mouse wheel, spacebar and the arrow keys.

Zooming and panning with the mouse wheel

While digitizing you can press the mouse wheel to pan inside of the main window and you can roll the mouse wheel to zoom in and out on the map. For zooming place the mouse cursor inside the map area and roll it forward (away from you) to zoom in and backwards (towards you) to zoom out. The mouse cursor position will be the center of the zoomed area of interest. You can customize the behavior of the mouse wheel zoom using the Map tools tab under the Settings ‣ mActionOptions Options menu.

Panning with the arrow keys

Panning the map during digitizing is possible with the arrow keys. Place the mouse cursor inside the map area and click on the right arrow key to pan east, left arrow key to pan west, up arrow key to pan north and down arrow key to pan south.

You can also use the spacebar to temporarily cause mouse movements to pan then map. The PgUp and PgDown keys on your keyboard will cause the map display to zoom in or out without interrupting your digitizing session.

Topological editing

Besides layer based snapping options you can also define some topological functionalities in the Snapping options... dialog in the Settings (or File) menu. Here you can define checkbox Enable topological editing and/or for polygon layers you can activate the column checkbox Avoid Int. which avoids intersection of new polygons.

Enable topological editing

The option checkbox Enable topological editing is for editing and maintaining common boundaries in polygon mosaics. QGIS ‘detects’ a shared boundary in a polygon mosaic and you only have to move the vertex once and QGIS will take care about updating the other boundary.

Avoid intersections of new polygons

The second topological option in the checkbox Avoid Int. column, called Avoid intersections of new polygons avoids overlaps in polygon mosaics. It is for quicker digitizing of adjacent polygons. If you already have one polygon, it is possible with this option to digitize the second one such that both intersect and QGIS then cuts the second polygon to the common boundary. The advantage is that users don’t have to digitize all vertices of the common boundary.

Enable snapping on intersections

Another option is to use checkbox Enable snapping on intersection. It allows to snap on an intersection of background layers, even if there’s no vertex on the intersection.

Digitizing an existing layer

By default, QGIS loads layers read-only: This is a safeguard to avoid accidentally editing a layer if there is a slip of the mouse. However, you can choose to edit any layer as long as the data provider supports it, and the underlying data source is writable (i.e. its files are not read-only).

In general, editing vector layers is divided into a digitizing and an advanced digitizing toolbar, described in Section Advanced digitizing. You can select and unselect both under Settings ‣ Toolbars ‣. Using the basic digitizing tools you can perform the following functions:

Icon Purpose Icon Purpose
mActionAllEdits Current edits mActionToggleEditing Toggle editing
mActionCapturePoint Adding Features: Capture Point mActionCaptureLine Adding Features: Capture Line
mActionCapturePolygon Adding Features: Capture Polygon mActionMoveFeature Move Feature
mActionNodeTool Node Tool mActionDeleteSelected Delete Selected
mActionEditCut Cut Features mActionEditCopy Copy Features
mActionEditPaste Paste Features mActionSaveEdits Save layer edits

Table Editing: Vector layer basic editing toolbar

All editing sessions start by choosing the mActionToggleEditing Toggle editing option. This can be found in the context menu after right clicking on the legend entry for that layer.

Alternately, you can use the Toggle Editing mActionToggleEditing Toggle editing button from the digitizing toolbar to start or stop the editing mode. Once the layer is in edit mode, markers will appear at the vertices, and additional tool buttons on the editing toolbar will become available.

Tip

Save Regularly

Remember to mActionSaveEdits Save Layer Edits regularly. This will also check that your data source can accept all the changes.

Adding Features

You can use the mActionCapturePoint Add Feature, mActionCaptureLine Add Feature or mActionCapturePolygon Add Feature icons on the toolbar to put the QGIS cursor into digitizing mode.

For each feature, you first digitize the geometry, then enter its attributes. To digitize the geometry, left-click on the map area to create the first point of your new feature.

For lines and polygons, keep on left-clicking for each additional point you wish to capture. When you have finished adding points, right-click anywhere on the map area to confirm you have finished entering the geometry of that feature.

The attribute window will appear, allowing you to enter the information for the new feature. Figure_edit_2 shows setting attributes for a fictitious new river in Alaska. In the Digitizing menu under the Settings ‣ Options menu, you can also activate checkbox Suppress attributes pop-up windows after each created feature checkbox Reuse last entered attribute values.

Figure Edit 2:

../../../_images/editDigitizing.png

Enter Attribute Values Dialog after digitizing a new vector feature nix

With the mActionMoveFeature Move Feature(s) icon on the toolbar you can move existing features.

Tip

Attribute Value Types

For editing the attribute types are validated during the entry. Because of this, it is not possible to enter a number into the text-column in the dialog Enter Attribute Values or vice versa. If you need to do so, you should edit the attributes in a second step within the Attribute table dialog.

Current Edits

This new feature allows the digitization of multiple layers. Choose mActionFileSaveAs Save for Selected Layers to save all changes you made in multiple layers. You also have the opportunity to mActionRollbackEdits Rollback for Selected Layers so that the digitization is then withdrawn for all selected layers. If you want to stop editing the selected layers the mActionCancelEdits Cancel for Selected Layer(s) is an easy way.

The same functions for editing all layers of the project are available.

Node Tool

For shapefile-based layers as well as SpatialLite,PostgreSQL/PostGIS, MSSQL Spatial and Oracle Spatial tables the mActionNodeTool Node Tool provides manipulation capabilites of feature vertices similar to CAD programs. It is possible to simply select multiple vertices at once and to move, add or delete them alltogether. The node tool also works with ‘on the fly’ projection turned on and supports the topological editing feature. This tool is, unlike other tools in QGIS, persistent, so when some operation is done, selection stays active for this feature and tool. If the node tool couldn’t find any features, a warning will be displayed.

Important is to set the property Settings ‣ mActionOptions Options ‣ Digitizing ‣ Search Radius: selectnumber to a number greater than zero (i.e. 10). Otherwise QGIS will not be able to tell which vertex is being edited.

Tip

Vertex Markers

The current version of QGIS supports three kinds of vertex-markers: Semi transparent circle, Cross and None. To change the marker style, choose mActionOptions Options from the Settings menu and click on the Digitizing tab and select the appropriate entry.

Basic operations

Start by activating the mActionNodeTool Node Tool and selecting a feature by clicking on it. Red boxes will appear at each vertex of this feature.

  • Selecting vertices: You can select vertices by clicking on them one at a time, by clicking on an edge to select the vertices at both ends, or by clicking and dragging a rectangle around some vertices. When a vertex is selected its color changes to blue. To add more vertices to the current selection, hold down the Ctrl key while clicking. Hold down Ctrl or Shift when clicking to toggle the selection state of vertices (vertices that are currently unselected will be selected as usual, but also vertices that are already selected will become unselected).
  • Adding vertices: To add a vertex simply double click near an edge and a new vertex will appear on the edge near to the cursor. Note that the vertex will appear on the edge, not at the cursor position, therefore it has to be moved if necessary.
  • Deleting vertices: After selecting vertices for deletion, click the Delete key. Note that you cannot use the mActionNodeTool Node Tool to delete a complete feature; QGIS will ensure it retains the minimum number of vertices for the feature type you are working on. To delete a complete feature use the mActionDeleteSelected Delete Selected tool.
  • Moving vertices: Select all the vertices you want to move. Click on a selected vertex or edge and drag in the direction you wish to move. All the selected vertices will move together. If snapping is enabled, the whole selection can jump to the nearest vertex or line.

Each change made with the node tool is stored as a separate entry in the undo dialog. Remember that all operations support topological editing when this is turned on. On the fly projection is also supported, and the node tool provides tooltips to identify a vertex by hovering the pointer over it.

Cutting, Copying and Pasting Features

Selected features can be cut, copied and pasted between layers in the same QGIS project, as long as destination layers are set to mActionToggleEditing Toggle editing beforehand.

Features can also be pasted to external applications as text: That is, the features are represented in CSV format with the geometry data appearing in the OGC Well-Known Text (WKT) format.

However in this version of QGIS, text features from outside QGIS cannot be pasted to a layer within QGIS. When would the copy and paste function come in handy? Well, it turns out that you can edit more than one layer at a time and copy/paste features between layers. Why would we want to do this? Say we need to do some work on a new layer but only need one or two lakes, not the 5,000 on our big_lakes layer. We can create a new layer and use copy/paste to plop the needed lakes into it.

As an example we are copying some lakes to a new layer:

  1. Load the layer you want to copy from (source layer)
  2. Load or create the layer you want to copy to (target layer)
  3. Start editing for target layer
  4. Make the source layer active by clicking on it in the legend
  5. Use the mActionSelect Select Single Feature tool to select the feature(s) on the source layer
  6. Click on the mActionEditCopy Copy Features tool
  7. Make the destination layer active by clicking on it in the legend
  8. Click on the mActionEditPaste Paste Features tool
  9. Stop editing and save the changes

What happens if the source and target layers have different schemas (field names and types are not the same)? QGIS populates what matches and ignores the rest. If you don’t care about the attributes being copied to the target layer, it doesn’t matter how you design the fields and data types. If you want to make sure everything - feature and its attributes - gets copied, make sure the schemas match.

Tip

Congruency of Pasted Features

If your source and destination layers use the same projection, then the pasted features will have geometry identical to the source layer. However if the destination layer is a different projection then QGIS cannot guarantee the geometry is identical. This is simply because there are small rounding-off errors involved when converting between projections.

Deleting Selected Features

If we want to delete an entire polygon, we can do that by first selecting the polygon using the regular mActionSelect Select Single Feature tool. You can select multiple features for deletion. Once you have the selection set, use the mActionDeleteSelected Delete Selected tool to delete the features.

The mActionEditCut Cut Features tool on the digitizing toolbar can also be used to delete features. This effectively deletes the feature but also places it on a “spatial clipboard”. So we cut the feature to delete. We could then use the mActionEditPaste Paste Features tool to put it back, giving us a one-level undo capability. Cut, copy, and paste work on the currently selected features, meaning we can operate on more than one at a time.

Saving Edited Layers

When a layer is in editing mode, any changes remain in the memory of QGIS. Therefore they are not committed/saved immediately to the data source or disk. If you want to save edits to the current layer but want to continue editing without leaving the editing mode, you can click the mActionSaveEdits Save Layer Edits button. When you turn editing mode off with the mActionToggleEditing Toggle editing (or quit QGIS for that matter), you are also asked if you want to save your changes or discard them.

If the changes cannot be saved (e.g. disk full, or the attributes have values that are out of range), the QGIS in-memory state is preserved. This allows you to adjust your edits and try again.

Tip

Data Integrity

It is always a good idea to back up your data source before you start editing. While the authors of QGIS have made every effort to preserve the integrity of your data, we offer no warranty in this regard.

Advanced digitizing

Icon Purpose Icon Purpose
mActionUndo Undo mActionRedo Redo
mActionRotateFeature Rotate Feature(s) mActionSimplify Simplify Feature
mActionAddRing Add Ring mActionAddPart Add Part
mActionDeleteRing Delete Ring mActionDeletePart Delete Part
mActionReshape Reshape Features mActionOffsetCurve Offset Curve
mActionSplitFeatures Split Features mActionMergeFeatures Merge Selected Features
mActionRotatePointSymbols Rotate Point Symbols mActionMergeFeatureAttributes Merge Attributes of Selected Features

Table Advanced Editing: Vector layer advanced editing toolbar

Undo and Redo

The mActionUndo Undo and mActionRedo Redo tools allow the user to undo or redo vector editing operations. There is also a dockable widget, which shows all operations in the undo/redo history (see Figure_edit_3). This widget is not displayed by default; it can be displayed by right clicking on the toolbar and activating the Undo/Redo check box. Undo/Redo is however active, even if the widget is not displayed.

Figure Edit 3:

../../../_images/redo_undo.png

Redo and Undo digitizing steps nix

When Undo is hit, the state of all features and attributes are reverted to the state before the reverted operation happened. Changes other than normal vector editing operations (for example changes done by a plugin), may or may not be reverted, depending on how the changes were performed.

To use the undo/redo history widget simply click to select an operation in the history list; all features will be reverted to the state they were in after the selected operation.

Rotate Feature(s)

Use the mActionRotateFeatureRotate Feature(s) to rotate one or multiple selected features in the map canvas. You first need to select the features and then press the mActionRotateFeatureRotate Feature(s) Icon. Then the centroid of the feature appears and will be the rotation anchor point. If you selected multiple features the rotation anchor point will be the common center of the features. Press and drag the left mouse button in the desired direction to rotate the selected features.

It’s also possible to create a user-defined rotation anchor point by which the selected feature will rotate. Select the features to rotate and activate the mActionRotateFeatureRotate Feature(s) Tool. Press and hold the Ctrl button and move the mouse pointer (without pressing the mouse button) to the place where you want the rotation anchor to be moved. Release the Ctrl button when the desired rotation anchor point is reached. Now press and drag the left mouse button in the desired direction to rotate the selected feature(s).

Simplify Feature

The mActionSimplify Simplify Feature tool allows to reduce the number of vertices of a feature, as long as the geometry doesn’t change. You need to select a feature, it will be highlighted by a red rubber band and a slider appears. Moving the slider, the red rubber band is changing its shape to show how the feature is being simplified. Clicking [OK] the new, simplified geometry will be stored. If a feature cannot be simplified (e.g. MultiPolygons), a message shows up.

Add Ring

You can create ring polygons using the mActionAddRing Add Ring icon in the toolbar. This means inside an existing area it is possible to digitize further polygons, that will occur as a ‘hole’, so only the area in between the boundaries of the outer and inner polygons remain as a ring polygon.

Add Part

You can mActionAddPart add part polygons to a selected multipolygon. The new part polygon has to be digitized outside the selected multipolygon.

Delete Ring

The mActionDeleteRing Delete Ring tool allows to delete ring polygons inside an existing area. This tool only works with polygon layers. It doesn’t change anything when it is used on the outer ring of the polygon. This tool can be used on polygon and multi-polygon features. Before you select the vertices of a ring, adjust the vertex edit tolerance.

Delete Part

The mActionDeletePart Delete Part tool allows to delete parts from multifeatures (e.g. to delete polygons from a multipolygon feature). It won’t delete the last part of the feature, this last part will stay untouched. This tool works with all multi-part geometries point, line and polygon. Before you select the vertices of a part, adjust the vertex edit tolerance.

Reshape Features

You can reshape line and polygon features using the mActionReshape Reshape Features icon on the toolbar. It replaces the line or polygon part from the first to the last intersection with the original line. With polygons this can sometimes lead to unintended results. It is mainly useful to replace smaller parts of a polygon, not major overhauls and the reshape line is not allowed to cross several polygon rings as this would generate an invalid polygon.

For example, you can edit the boundary of a polygon with this tool. First, click in the inner area of the polygon next to the point where you want to add a new vertex. Then, cross the boundary and add the vertices outside the polygon. To finish, right-click in the inner area of the polygon. The tool will automatically add a node where the new line crosses the border. It is also possible to remove part of the area from the polygon, starting the new line outside the polygon, adding vertices inside, and ending the line outside the polygon with a right click.

Note

The reshape tool may alter the starting position of a polygon ring or a closed line. So the point that is represented ‘twice’ will not be the same any more. This may not be a problem for most applications, but it is something to consider.

Offset Curves

The mActionOffsetCurve Offset Curve tool creates parallel shifts of line layers. The tool can be applied to the edited layer (the geometries are modified) or also to background layers (creates copies of the lines / rings and adds it to the the edited layer). It is thus ideally suited for the creation of distance line layers. The displacement is shown at the bottom left of the taskbar. To create a shift of a line layer you have to go into editing mode and then select the feature. You can make the mActionOffsetCurve Offset Curve tool active and drag the cross to the desired distance. Your changes then can be saved with the mActionSaveEditsSave Layer Edits tool.

Split Features

You can split features using the mActionSplitFeatures Split Features icon on the toolbar. Just draw a line across the feature you want to split.

Merge selected features

The mActionMergeFeatures Merge Selected Features tool allows to merge features that have common boundaries and the same attributes.

Merge attributes of selected features

The mActionMergeFeatureAttributes Merge Attributes of Selected Features tool allows to merge attributes of features with common boundaries and attributes without merging their boundaries. You can merge the attributes when selecting several features at once. Then press the mActionMergeFeatureAttributes Merge Attributes of Selected Features button. Now QGIS offers you which attributes are to be applied to all selected objects. As a result, all objects have the same attribute entries.

Rotate Point Symbols

The mActionRotatePointSymbols Rotate Point Symbols allows to change the rotation of point symbols in the map canvas. You have to define a rotation column from the attribute table of the point layer in the Advanced menu of the Style menu of the Layer Properties. Also you have to go into the ‘SVG marker’ and choose Data defined properties .... Activate checkbox Angle and choose ‘rotation’ as field. Without these settings the tool is inactive.

Figure Edit 4:

../../../_images/rotatepointsymbol.png

Rotate Point Symbols nix

To change the rotation, select a point feature in the map canvas and rotate it holding the left mouse button pressed. A red arrow with the rotation value will be visualized (see Figure_edit_4). When you release the left mouse button again, the value will be updated in the attribute table.

Note

If you hold the Ctrl key pressed, the rotation will be done in 15 degree steps.

Creating new Vector layers

QGIS allows to create new Shapefile layers, new SpatiaLite layers, and new GPX Layers. Creation of a new GRASS layer is supported within the GRASS-plugin. Please refer to section Creating a new GRASS vector layer for more information on creating GRASS vector layers.

Creating a new Shapefile layer

To create a new Shape layer for editing, choose New ‣ mActionNewVectorLayer New Shapefile Layer... from the Layer menu. The New Vector Layer dialog will be displayed as shown in Figure_edit_5. Choose the type of layer (point, line or polygon) and the CRS (Coordinate Reference System).

Note that QGIS does not yet support creation of 2.5D features (i.e. features with X,Y,Z coordinates).

Figure Edit 5:

../../../_images/editNewVector.png

Creating a new Shapefile layer Dialog nix

To complete the creation of the new Shapefile layer, add the desired attributes by clicking on the [Add to attributes list] button and specifying a name and type for the attribute. A first ‘id’ column is added as default but can be removed, if not wanted. Only Type: real selectstring, Type: integer selectstring, Type: string selectstring and Type:date selectstring attributes are supported. Additionally and according to the attribute type you can also define the width and precision of the new attribute column. Once you are happy with the attributes, click [OK] and provide a name for the shapefile. QGIS will automatically add a .shp extension to the name you specify. Once the layer has been created, it will be added to the map and you can edit it in the same way as described in Section Digitizing an existing layer above.

Creating a new SpatiaLite layer

To create a new SpatiaLite layer for editing, choose New ‣ mActionNewSpatiaLiteLayer New SpatiaLite Layer... from the Layer menu. The New SpatiaLite Layer dialog will be displayed as shown in Figure_edit_6.

Figure Edit 6:

../../../_images/editNewSpatialite.png

Creating a New SpatiaLite layer Dialog nix

First step is to select an existing SpatiaLite database or to create a new SpatiaLite database. This can be done with the browse button browsebutton to the right of the database field. Then add a name for the new layer and define the layer type and specify the Coordinate Reference System with [Specify CRS]. If desired you can select to checkbox Create an autoincrementing primary key.

To define an attribute table for the new SpatiaLite layer, add the names of the attribute columns you want to create with the according column type and click on the [Add to attribute list] button. Once you are happy with the attributes, click [OK]. QGIS will automatically add the new layer to the legend and you can edit it in the same way as described in Section Digitizing an existing layer above.

Further management of SpatiaLite-Layers can be done with the DB Manager see DB Manager Plugin.

Creating a new GPX layer

To create a new GPX file you need to load the GPS plugin first. Plugins ‣ mActionShowPluginManager Plugin Manager... opens the Plugin Manager Dialog. Activate the checkbox GPS Tools checkbox.

When this plugin is loaded choose New ‣ icon_newgpx Create new GPX Layer... from the Layer. In the Save new GPX file as dialog you can choose where to save the new GPX layer.

Working with the Attribute Table

The attribute table displays features of a selected layer. Each row in the table represents one map feature and each column contains a particular piece of information about the feature. Features in the table can be searched, selected, moved or even edited.

To open the attribute table for a vector layer, make the layer active by clicking on it in the map legend area. Then from the main menu Layer choose mActionOpenTable Open Attribute Table. It is also possible to rightclick on the layer and choose mActionOpenTable Open Attribute Table from the dropdown menu and to click on the mActionOpenTable Open Attribute Table button in the Attributes toolbar.

This will open a new window which displays the feature attributes in the layer (figure_attributes_1). The number of features and the number of selected features are shown in the attribute table title.

Figure Attributes 1:

../../../_images/vectorAttributeTable.png

Attribute Table for regions layer nix

Selecting features in an attribute table

Each selected row in the attribute table displays the attributes of a selected feature in the layer. If the set of features selected in the main window is changed, the selection is also updated in the attribute table. Likewise, if the set of rows selected in the attribute table is changed, the set of features selected in the main window will be updated.

Rows can be selected by clicking on the row number on the left side of the row. Multiple rows can be marked by holding the Ctrl key. A continuous selection can be made by holding the Shift key and clicking on several row headers on the left side of the rows. All rows between the current cursor position and the clicked row are selected. Moving the cursor position in the attribute table, by clicking a cell in the table, does not change the row selection. Changing the selection in the main canvas does not move the cursor position in the attribute table.

The table can be sorted by any column, by clicking on the column header. A small arrow indicates the sort order (downward pointing means descending values from the top row down, upward pointing means ascending values from the top row down).

For a simple search by attributes on only one column choose the Column filter ‣ from the menu in the bottom left corner. Select the field (column) from which the search should be performed from the dropdown menu and hit the [Apply] button. Then only the matching features are shown in the Attribute table.

To make a selection you have to use the mIconExpressionSelect Select features using an Expression icon on top of the Attribute table. The mIconExpressionSelect Select features using an Expression allows you to define a subset of a table using a Function List like in the mActionCalculateField Field Calculator (see Field Calculator). The query result then can be saved as a new vector layer. For example if you want to find regions that are boroughs from the regions.shp of the QGIS sample data you have to open the >Fields and Values menu and choose the field that you want to query. Double-klick the field ‘TYPE_2’ and also [Load all unique values] . From list choose and double-klick ‘Borough’. In the Expression field the following query appears:

"TYPE_2"  =  'Borough'

The matching rows will be selected and the total number of matching rows will appear in the title bar of the attribute table, and in the status bar of the main window. For searches that display only selected features on the map use the Query Builder described in Section Query Builder.

To show selected records only, use Show Selected Features from the menu at the bottom left.

The other buttons at the top of the attribute table window provide following functionality:

  • mActionToggleEditing Toggle editing mode to edit single values and to enable functionalities described below also with Ctrl+E
  • mActionSaveEdits Save Edits also with Ctrl+S
  • mActionUnselectAttributes Unselect all also with Ctrl+U
  • mActionSelectedToTop Move selected to top also with Ctrl+T
  • mActionInvertSelection Invert selection also with Ctrl+R
  • mActionCopySelected Copy selected rows to clipboard also with Ctrl+C
  • mActionZoomToSelected Zoom map to the selected rows also with Ctrl+J
  • PanToSelected Pan map to the selected rows also with Ctrl+P
  • mActionDeleteSelected Delete selected features also with Ctrl+D
  • mActionNewAttribute New Column for PostGIS layers and for OGR layers with GDAL version >= 1.6 also with Ctrl+W
  • mActionDeleteAttribute Delete Column for PostGIS layers and for OGR layers with GDAL version >= 1.9 also with Ctrl+L
  • mActionCalculateField Open field calculator also with Ctrl+I

Tip

Skip WKT geometry

If you want to use attribute data in external programs (such as Excel) use the mActionCopySelected Copy selected rows to clipboard button. You can copy the information without vector geometries if you deactivate Settings ‣ Options ‣ Data sources menu checkbox Copy geometry in WKT representation from attribute table.

Save selected features as new layer

The selected features can be saved as any OGR supported vector format and also transformed into another Coordinate Reference System (CRS). Just open the right mouse menu of the layer and click on Save selection as ‣ to define the name of the output file, its format and CRS (see Section Map Legend). It is also possible to specify OGR creation options within the dialog.

Working with non spatial attribute tables

QGIS allows also to load non spatial tables. This includes currently tables supported by OGR, delimited text as well as the PostgreSQL, MSSQL and Oracle provider. The tables can be used for field lookups or just generally browsed and edited using the table view. When you load the table you will see it in the legend field. It can be opened e.g. with the mActionOpenTable Open Attribute Table tool and is then editable like any other layer attribute table.

As an example you can use columns of the non spatial table to define attribute values or a range of values that are allowed to be added to a specific vector layer during digitizing. Have a closer look at the edit widget in section Fields Menu to find out more.