ArcSDE 图层创建、注册、插入数据与删除数据

来源:互联网 发布:银行网络宣传方法 编辑:程序博客网 时间:2024/05/18 02:00
环境:windows 2003 Server
ArcSDE 9.3


----------------------------ArcSDE注册语法-----------------------


sdelayer -o register -l gis230000000000.st_asj_pt,shape -e p -C objectid,sde -u gis230000000000 -p gis230000000000 -t ST_GEOMETRY -r 0


-l 注册表名与空间列名


-e 注册要素类型
p point
l line
a poylone
        p+ 多点
l+ 多线
a+ 多面
-C 主键列名及管理主键的用户


-u 注册用户名
-p 注册密码
-t 注册类型


删除指定图层,但非删除表
sdelayer -o delete -l aa_1,shape -u test -p test;


查询某个图层的Owner,Layer id,用户可以操作的权限


远端注册
sdelayer -o register -l giswell,shape -e l+ -C ID,USER -t st_geometry -u user -p pwd -i sde:oracle10g:/;local=local_tnsname -r rsid


---------------------------向图层表添加数据-----------------------
select registration_id from sde.table_registry where table_name='ST_KK_PT' and owner='GIS230000000000';--343
insert into st_kk_pt(objectid,
mc, jd, wd, bh, sszzjgdm, fldm, gxsj, shape
)
select 
sde.version_user_ddl.next_row_id('GIS230000000000',343),
mc,
       ltrim(rtrim(jd)) jd,
       ltrim(rtrim(wd)) wd,
       bh,
       sszzjgdm,
       '' fldm,
       sysdate gxsj,
       sde.st_pointfromtext('point('||ltrim(rtrim(jd))||' '||ltrim(rtrim(wd))||')', 4) shape
       --sde.st_pointfromtext('point(125 45)', 4)
       --SDE.St_Linefromtext('linestring(126.47426 35,127.47426 36)', 5)
       --SDE.St_Polygon('polygon((126.47426 35,127.47426 36,128.47426 38,126.47426 35))', 4)
  from JX_KK_PT@JX_PGIS
 where mc NOT LIKE '长青卡口%'
---------------------------清除图层表垃圾数据--------------------
CREATE OR REPLACE PROCEDURE del_sde_tab(tableName IN VARCHAR2) AS
BEGIN
  DELETE FROM sde.gdb_objectclasses t WHERE t.name=UPPER(tableName);
  DELETE FROM sde.geometry_columns t WHERE t.f_table_name=UPPER(tablename);
  DELETE FROM sde.geometry_columns t WHERE t.g_table_name=UPPER(tablename);
  DELETE FROM sde.gdb_usermetadata t WHERE t.name=UPPER(tablename);
  DELETE FROM sde.layers t WHERE t.table_name=UPPER(tablename);
  DELETE FROM sde.st_geometry_index t WHERE t.table_name=UPPER(tablename);
  DELETE FROM sde.table_registry t WHERE t.table_name=UPPER(tablename);
  DELETE FROM sde.column_registry t WHERE t.table_name=UPPER(tablename);
  DELETE FROM sde.gdb_featuredataset t WHERE t.name=UPPER(tablename);
  DELETE FROM sde.all_st_geometry_columns_v t WHERE t.table_name=UPPER(tablename);
  DELETE FROM sde.st_geometry_columns t WHERE t.table_name=UPPER(tablename);
END;


 
0 0
原创粉丝点击