【284】◀▶ arcpy.da & arcpy 数据访问模块
参考:
01 | da.SearchCursor | 只读查看表或要素类数据。 | |
02 | da.InsertCursor | 向表或要素类插入行。 | |
03 | da.UpdateCursor | 编辑或删除表和要素类行。 | |
04 | SearchCursor | 用于在要素类或表上建立只读游标。 | |
05 | InsertCursor | 向要素类、shapefile 或表中插入行。 | |
06 | UpdateCursor | 创建一个用于更新或删除指定要素类、shapefile 和表中的行的游标。 |
序号 | 函数名称 |
功能说明 |
语法 & 举例 | ||
以下是 arcpy.da.SearchCursor、arcpy.da.InsertCursor、arcpy.da.UpdateCursor |
|||||
01 | da.SearchCursor |
====<<<< Description >>>>==== SearchCursor 用于建立从要素类或表中返回的记录的只读访问权限。 ====<<<< Syntax >>>>==== da.SearchCursor (in_table, field_names, {where_clause}, {spatial_reference}, {explode_to_points}, {sql_clause}) ====<<<< Parameters >>>>==== ◈ in_table:要素类、图层、表或表视图。 ====<<<< Properties >>>>==== ◈ fields:返回一个使用这个游标的字段名称的元组,与上面的参数对应。 ====<<<< Methods >>>>==== ◈ next ():将下一行作为元组返回。字段将按照创建光标时所指定的顺序返回。 |
# 用来查询 "Fre = 0" 的全部记录(遇到字符串使用单引号,"Name = 'alex'") # 获取查询列的所有值,并赋值为列表(values) # 获取经纬度坐标 在 Python 中,构建由三重引号括起的表达式 cursor = arcpy.da.SearchCursor(fc, ["roadclass", "name"], 1. 注意操作的时候不要选择数据,否则只会查询选择范围内的信息; 2. 如果想要选择全部 table 内容,则不需要添加 SQL 语句; 3. 注意 SQL 语法等。 |
||
02 | da.InsertCursor |
====<<<< Description >>>>==== InsertCursor 可在要素类或表上建立写入游标。可以使用 InsertCursor 来添加新行。 ====<<<< Syntax >>>>==== da.InsertCursor (in_table, field_names) ====<<<< Parameters >>>>==== ◈ in_table:要素类、图层、表或表视图。 ◈ fields:返回一个使用这个游标的字段名称的元组,与上面的参数对应。 ====<<<< Methods >>>>==== ◈ insertRow (row):向表中插入一行。 |
|
||
03 |
====<<<< Description >>>>==== UpdateCursor 用于建立对从要素类或表返回的记录的读写访问权限。 ====<<<< Syntax >>>>==== da.UpdateCursor (in_table, field_names, {where_clause}, {spatial_reference}, {explode_to_points}, {sql_clause}) ====<<<< Parameters >>>>==== ◈ in_table:要素类、图层、表或表视图。 ◈ fields:返回一个使用这个游标的字段名称的元组,与上面的参数对应。 ====<<<< Methods >>>>==== ◈ deleteRow ():删除当前行。 |
|
|||
以下是 arcpy.SearchCursor、arcpy.InsertCursor、arcpy.UpdateCursor |
|||||
04 |
====<<<< Description >>>>==== SearchCursor 函数用于在要素类或表上建立只读游标。SearchCursor 可用于遍历行对象并提取字段值。可以使用 where 子句或字段限制搜索,并对结果排序。 以迭代方式搜索游标的方式有两种:for 循环或者 while 循环(通过游标的 next 方法返回下一行)。如果要使用游标的 next 方法来检索行数为 N 的表中的所有行,则脚本必须调用 next N 次。在检索完结果集的最后一行后调用 next 将返回 None,它是一种 Python 数据类型,此处用作占位符。 返回值为 Cursor 类,具体属性与方法参见 Cursor 类。 ====<<<< Syntax >>>>==== SearchCursor (dataset, {where_clause}, {spatial_reference}, {fields}, {sort_fields}) ====<<<< Parameters >>>>==== ◈ dataset:The feature class, shapefile, or table containing the rows to be searched. |
mxd = arcpy.mapping.MapDocument("CURRENT") |
|||
05 |
====<<<< Description >>>>==== 向要素类、shapefile 或表中插入行。InsertCursor 返回一个分发行对象的枚举对象。 可使用 newRow 方法从插入行的枚举对象获取新的行对象。每次调用光标上 insertRow 都会在表中创建新行,该行的初始值设置为输入行中的值。 返回值为 Cursor 类,具体属性与方法参见 Cursor 类。 ====<<<< Syntax >>>>==== InsertCursor (dataset, {spatial_reference}) ====<<<< Parameters >>>>==== ◈ dataset:The feature class, shapefile, or table containing the rows to be searched. |
cursor = arcpy.InsertCursor(lyr) |
|||
06 |
====<<<< Description >>>>==== UpdateCursor 函数创建一个用于更新或删除指定要素类、shapefile 和表中的行的游标。该游标将数据锁定保留至脚本完成或更新游标对象被删除时。 以迭代方式更新游标的方式有两种:for 循环或者 while 循环(通过游标的 next 方法返回下一行)。如果要使用游标的 next 方法来检索行数为 N 的表中的所有行,脚本必须调用 next N 次。在检索完结果集的最后一行后调用 next 将返回 None,它是一种 Python 数据类型,此处用作占位符。 返回值为 Cursor 类,具体属性与方法参见 Cursor 类。 ====<<<< Syntax >>>>==== UpdateCursor (dataset, {where_clause}, {spatial_reference}, {fields}, {sort_fields}) ====<<<< Parameters >>>>==== ◈ dataset:The feature class, shapefile, or table containing the rows to be searched. |
# 将一列的数据赋值到另一列 |
|||
-- |
---------- |
-------------------------------------------------- |
【284】◀▶ arcpy.da & arcpy 数据访问模块的更多相关文章
- ASP.NET Core模块化前后端分离快速开发框架介绍之3、数据访问模块介绍
源码 GitHub:https://github.com/iamoldli/NetModular 演示地址 地址:https://nm.iamoldli.com 账户:admin 密码:admin 前 ...
- arcpy.UpdateCursor和arcpy.da.UpdateCursor计算面积时间的比较
arcpy.UpdateCursor ####################### import arcpy from arcpy import env import os import sys f ...
- ArcGIS ArcPy Python处理数据
1.使用搜索游标查看行中的字段值.import arcpy # Set the workspace arcpy.env.workspace = "c:/base/data.gdb" ...
- JAVAWEB基础模块开发顺序与数据访问对象实现类步骤
一.模块的开发的顺序 1. 定义数据表 2. 新建模型类 3. 新建"add.jsp" 4. 实现AddServlet中的doGet()方法 5. 定义Dao.Service接口 ...
- 【273】利用ArcPy建立处理数据的脚本
这个脚本可以直接运行处理程序,首先在 ArcPy 上面测试,成功后写入文件,下面的代码实现将指定文件夹内部的栅格数据进行 Calculate Statistics 操作,否则在进行专题图制作的时候会出 ...
- step by step 之餐饮管理系统六(数据库访问模块)
距上次写的博客已经好几个月,一方面公司里面有很多的东西要学,平时的时候又要写代码,所以没有及时更新,不过现在还好,已经成型了,现在把之前的东西贴出来,先看一下现在做的几个界面吧.第一个界面是用颜色用区 ...
- Dojo Data Store——统一数据访问接口
原文地址:http://www.infoq.com/cn/articles/wq-dojo-data-store 无论在传统的桌面应用还是在主流的互联网应用中,数据始终占据着软件应用中的核心地位.当下 ...
- SRF之数据访问
数据访问组件实现实体类和数据表映射.SQL语句配置执行.动态sql语句等功能,ORM方式能实现简单的对象和表的映射(配置类似hibernate),但比较单一(不支持一对多.多对多的情况),下边不做介绍 ...
- 数据访问层DAL(数据库访问抽象类DataProvider)
晒晒数据访问层DAL,看看你的项目数据访问层使用的是什么形式,数据访问性能比较 采用什么样的数据访问形式是软件编码很重要的一个环节,良好的数据访问形式不仅能够提搞代码的执行效率,协作能力,更重要的是对 ...
随机推荐
- 如何在100万文字的文章中 200ms内 快速提取 替换 上万个关键字
关键点: 关键字 组合 成一棵 hash 树 ( 有属性就直接移动指针到下一个字对象, 没有属性就创建子对象, 再移动指针; 第二次循环在子对象看有没这个属性 ) 探测针 标记结束 ...
- Flask 的 数据库连接 与 DBUtils 数据库连接池
Flask 的 数据库连接 与 DBUtils 数据库连接池 本地线程:thread_local 为每个线程创建存储数据的空间,用于线程之间的数据隔离 否则多个线程同时访问,会使得数据混乱 1 Fla ...
- 如何限制mongodb数据库内存占用量方法
多实例下: 可以通过绑定cpu,来防止多实例相互干扰. mongodb的内存也可以限制主,防止全部内存都被一个实例占据. ulimit -s 4096 && ulimit -m 314 ...
- VC++6.0/MFC 自定义edit 限制输入内容 响应复制粘贴全选剪切的功能
Ctrl组合键ASCII码 ^Z代表Ctrl+z ASCII值 控制字符 ASCII值 控制字符 ASCII值 控制字符 ASCII值 控制字符0(00) ...
- freemarket使用自定义标签 注解【项目实际使用】
页面达到效果 [主html页面代码] <!-- 合作单位 版块 -->[#include 'inc_project_succ_coo.html'/]['inc_project_succ_c ...
- 洛谷 P2626 斐波那契数列(升级版)
题目背景 大家都知道,斐波那契数列是满足如下性质的一个数列: • f(1) = 1 • f(2) = 1 • f(n) = f(n-1) + f(n-2) (n ≥ 2 且 n 为整数). 题目描述 ...
- 几个开源faas 框架
funktion open source event based lambda programming for kubernetes 官方地址: funktion.fabric8.io serverl ...
- matlab_移动文件和复制文件
clear clc cd('C:\Users\xx\Desktop\learning'); % 设置当前目录 % 此时learning文件夹中有:文件夹x, 文件夹y, 文件a.png, 文件b.pn ...
- oracle系统表的查询
oracle查询用户下的所有表 select * from all_tab_comments -- 查询所有用户的表,视图等select * from user_tab_comments -- 查 ...
- ③SpringBoot中Redis的使用
本文基于前面的springBoot系列文章进行学习,主要介绍redis的使用. SpringBoot对常用的数据库支持外,对NoSQL 数据库也进行了封装自动化. redis介绍 Redis是目前业界 ...