18.3. Lesson: 在QGIS中使用SpatiaLite数据库

虽然通常在服务器上使用PostGIS来同时向多个用户提供空间数据库功能,但QGIS也支持使用名为 SpatiaLite 这是在单个文件中存储整个空间数据库的一种轻量级、可移植的方式。显然,这两种类型的空间数据库应该用于不同的目的,但基本原则和技术适用于这两种类型。让我们创建一个新的SpatiaLite数据库,并探索在QGIS中使用这些数据库所提供的功能。

The goal for this lesson: 了解如何使用QGIS浏览器界面与SpatiaLite数据库交互。

18.3.1. 基本信息 Follow Along: Creating a SpatiaLite database with the Browser

使用浏览器面板,我们可以创建一个新的SpatiaLite数据库,并将其设置为在QGIS中使用。

  1. 右键单击 SpatiaLite 在浏览器树中输入并选择 Create Database

  2. 指定要在文件系统上存储文件的位置并对其进行命名 qgis-sl.db

  3. 再次右键单击 SpatiaLite 条目,现在选择 New Connection 项目。找到您在上一步中创建的文件并打开它。

现在您已经配置了新数据库,您会发现Browser树中的条目下面没有任何内容,此时您唯一能做的就是删除连接。当然,这是因为我们还没有向该数据库添加任何表。让我们继续做这件事吧。

  1. Find the button to create a new layer and use the dropdown to create a new SpatiaLite layer, or select Layer ► New ► 新空间LiteLayer New SpatiaLite Layer.

  2. 在下拉列表中选择我们在前面步骤中创建的数据库。

  3. 将该层命名为 places

  4. 勾选旁边的复选框 Create an auto-incrementing primary key

  5. 添加两个属性,如下所示

  6. 单击 OK 来创建表。

    ../../../_images/new_layer_setup.png
  7. 单击浏览器顶部的刷新按钮,您现在应该会看到 places 表中列出。

    ../../../_images/new_layer_added.png

    您可以右键单击表并查看其属性,就像我们在上一个练习中所做的那样。

从这里,您可以启动编辑会话,并开始将数据直接添加到新数据库。

我们还了解了如何使用DB Manager将数据导入到数据库中,并且您可以使用同样的技术将数据导入到新的SpatiaLite数据库中。

18.3.2. In Conclusion

您已经了解了如何创建SpatiaLite数据库、向其中添加表以及将这些表用作QGIS中的层。