空间数据库建库工作程序

空间数据库建库工作程序,第1张

1空间坐标系统

坐标系统:采用1954北京坐标系,高斯-克吕格投影6度带投影,带号15,中央经线85°30′,单位为m。

高程基准:采用1956黄海高程系。

2建库工作程序

在实际 *** 作过程中,采用的建库流程参考国家数字地质图建库标准,结合西天山地区1:25万地质图图幅要素的实际情况,创建GeoDatabase数据,构建各要素集和要素类,数据库结构如图4-3所示。在矢量化过程中,采用以线性地质要素(断层,地质界线,岩性边界等)矢量为起点,以线跟踪,线拷贝为中心,最后以线转面(Feature to Poly-gon)的方法生成各面类地质图层,然后对临时面文件按各地质要素进行分类,导入各图幅的标准地质数据库中,再进行属性数据的录入。

在建库过程中,第一步,对扫描地质图进行几何校正。第二步,在ArcGIS Catalog平台上,按照前文讨论的各地质要素数据集,各地质要素字段创建数据库表结构。在统一的建库标准下建立完整的西天山地区地质图数据结构。每一幅地质图形成一个单独的地质数据库(GeoDatabase),每个库包含相同的数据结构和字段类型,每一个属性表形成一个图层,存放对应的地质几何要素;并在各自的数据库下增加临时线文件、临时面文件,用来保存第一步线形矢量化后未分类的图形数据。

在矢量化过程中,我们首先对断层要素进行矢量,因为断层线性平滑,多数断层是地层岩性的公共边界。断层矢量完成后紧接着对所有岩性边界进行矢量,包括沉积岩地层、侵入岩地层和变质岩地层边界,岩性边界数据存入临时线文件,是一个单独的线要素图层,在矢量时,如果断层恰好是岩性边界的界线或公共边,这时,为保证几何图形拓扑一致性,我们采用 “线跟踪” 或 “线拷贝” 的方法将公共边界的断层线直接拷贝至 “临时线” 图层。凡是作为公共边界的线,我们都采用同样的方法进行矢量,比如 “地质界线”图层与其他面状要素的公共边界等。

完成各岩性界线的矢量后,检查若没有遗漏,利用ArcGIS空间分析模块的 “线转面”(Feature to Polygon)工具,将临时线文件转换为临时面文件,设定闭合容差为10m。转换完成后按照沉积(火山)岩、侵入岩、岩墙进行面状要素的分类,逐一导入各自相对应的单独的图层中。对于脉岩(面)要素、火山机构和矿点(点)要素基本很少与其他图层共用边界,因此,直接对这些要素单独进行矢量便可。最后进行图形的质量检查,包括划分岩性类别检查,几何拓扑检查,检查无误且没有遗漏后,导入标准库中。这样基本完成了一幅扫描地质图各类地质要素的图形矢量工作,下一步,主要参考图例、柱状图和地质图说明书进行属性录入,如流程图4-3所示。最后,检查属性数据的录入完整无误后,便可进行下一图幅的矢量工作。

对于化探和航磁的数据处理可以采用多种方式,本次研究中主要采用克里金插值和主成分分析对化探、航磁数据进行处理,并结合地质矿产图说明书相关内容将化探、航磁数据与致矿有关的信息存入空间数据库中。上述数据的生产均在ArcGIS平台上完成。

3空间数据库内容

本次资源潜力评价空间数据库包含五个要素数据集,15个要素类以及至少6个栅格数据。

地理要素数据集:使用国家基础地理信息中心的1:25万地形数据库中的水系、政区、居民地和交通要素类四个要素类。

基础地质要素数据集:包括1:25万区域地层、侵入岩、火山岩、变质岩、构造分区、断层、矿产7个要素类。其中,资源潜力评价预测底图数据由地层和侵入体所定义的构造相单元属性通过数据融合直接生成,各要素类中所包含的属性内容及相应的数据类型应和区域成矿模型及资源评价所需要素保持一致,实现模型要求与信息的对称,各属性编码参考 《全国矿产资源潜力评价数据模型数据项下属词规定分册》。

物化探要素数据集:包括1:5万航磁要素类、1:5万地面磁法要素类、1:20万区域化探要素类、1:5万区域化探要素类四个要素类。

物化探栅格数据集:主要存储由物化探要素类通过克里金插值转换而来的栅格数据以及在空间分析过程中产生的栅格数据。

遥感栅格数据集:主要用于存储研究区ETM+卫星数据,是近年来在地质矿产应用特别是填图和蚀变信息提取占据主流地位的遥感数据源。

4数据库质量控制

空间数据库在数据完整性、逻辑一致性、位置精度、属性精度、接缝精度均要求符合中国地质调查局制定的有关技术规定和标准的要求。

建立一个数据库当你想建立一个表时,你必须按照以下的步骤先建立一个数据库:在SQL Enterprise Manager中,选择你的数据库的名字。从Manage菜单中选择Databases选项。管理数据库的窗口就出现了。在工具条上点击新建数据库的按钮,就会出现新建数据库的对话框(如图35所示)。注意</B>现在版本的SQL Server(version 65)最多能有32,767个数据库。每个数据库的最小容量是1MB,最大容量是ITB。在SQL Enterprise Manager对话框中的新建数据库对话框。 填写你的数据库所要使用的名字(不能有空格)。 然后,填写你要建立的数据库所在的数据库设备(例如,他就是你在前面一步建立的数据库设备)。 这个新建数据库的对话框会以图形的方式显示所有数据库设备的已经使用和没有使用的空间。 当你建立一个数据库时,你可以选择去建立事务日志。为了建立事务日志,你需要指定一个log device(日志数据库设备)。在新建数据库对话框中,打开标有LogDevice的下拉式框,然后选择一个数据库设备和用于日志的空间大小。注意</B>每个数据库都有它自己的事务处理日志,它记录了对数据库每一个请求(modify,insert,delete)。日志文件是对数据库的内部处理过程的一种监视。它允许你对数据库执行updates, inserts, deletes等 *** 作。所以在需要的时候,你也可以取消这些 *** 作的结果。在系统没有正确地关闭,而只是停机或重新启动时,这些事务处理的日志是很有用的-在重新启动时,SQL Server会根据事务处理日志来恢复数据。注意</B>当你把事务处理日志向一个dump 数据库倾倒时,你的事务处理日志会被截短。你也可以强制地使你的事务日志缩短。如果你想知道有关事务日志的更多的信息,请查询SQL 在线帮助文件,用关键字transaction log查找。6当你完成在新建数据库的对话框中的这些问题的回答,点击Create Now 按钮。你的数据库就会在Databases文件夹下显示出来。

一)连接MYSQL:

格式:mysql-h主机地址-u用户名-p用户密码

1、例1:连接到本机上的MYSQL

首先在打开DOS窗口,然后进入mysql安装目录下的bin目录下,例如:D:mysqlin,再键入命令mysql-uroot-p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql>

2、例2:连接到远程主机上的MYSQL

假设远程主机的IP为:10001,用户名为root,密码为123。则键入以下命令:

mysql-h10001-uroot-p123

(注:u与root可以不用加空格,其它也一样)

3、退出MYSQL命令

exit(回车)

(二)修改密码:

格式:mysqladmin-u用户名-p旧密码password新密码

1、例1:给root加个密码123。首先在DOS下进入目录C:mysqlin,然后键入以下命令:

mysqladmin-uroot-password123

注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。

2、例2:再将root的密码改为456

mysqladmin-uroot-pab12password456

(三)增加新用户:(注意:和上面不同,下面的因为是MYSQL环境中的命令,所以后面都带一个分号作为命令结束符)

格式:grantselecton数据库to用户名@登录主机identifiedby"密码"

例1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MYSQL,然后键入以下命令:

grantselect,insert,update,deleteontotest1@"%"Identifiedby"abc";

但例1增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见例2。

例2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的 *** 作(localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。

grantselect,insert,update,deleteonmydbtotest2@localhostidentifiedby"abc";

如果你不想test2有密码,可以再打一个命令将密码消掉。

grantselect,insert,update,deleteonmydbtotest2@localhostidentifiedby"";

(四)显示命令

1、显示数据库列表:

showdatabases;

刚开始时才两个数据库:mysql和test。mysql库很重要它里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行 *** 作。

2、显示库中的数据表:

usemysql;//打开库

showtables;

3、显示数据表的结构:

describe表名;

4、建库:

createdatabase库名;

5、建表:

use库名;

createtable表名(字段设定列表);

6、删库和删表:

dropdatabase库名;

droptable表名;

7、将表中记录清空:

deletefrom表名;

8、显示表中的记录:

selectfrom表名;

MySQL导入导出命令

1导出整个数据库

mysqlmp-u用户名-p数据库名>导出的文件名

mysqlmp-uwcnc-psmgp_apps_wcnc>wcncsql

2导出一个表

mysqlmp-u用户名-p数据库名表名>导出的文件名

mysqlmp-uwcnc-psmgp_apps_wcncusers>wcnc_userssql

3导出一个数据库结构

mysqlmp-uwcnc-p-d--add-drop-tablesmgp_apps_wcnc>d:wcnc_dbsql

-d没有数据--add-drop-table在每个create语句之前增加一个droptable

4导入数据库

常用source命令

进入mysql数据库控制台,如mysql-uroot-p

mysql>use数据库

然后使用source命令,后面参数为脚本文件(如这里用到的sql)

mysql>sourced:wcnc_dbsql(注:如果写成sourced:wcnc_dbsql,就会报语法错误

如何使用直连方式连接数据库

1,ArcGIS101统一了数据库连接,也就是不区分是空间数据库连接还是通过OLEDB方式的关系型数据库连接

2,在Catalog中只能采用直连方式;

3,ArcGIS101版本中,Esri提供的安装介质不在包含Postgresql(以前的是包含的);

4,安装Postgresql,官方给的软件要求是64位数,而且所有的企业级数据库都是64位(这应该和Server有关系吧,因为Server101是纯64位,在桌面软件的目录中给出的几个dll都是64位,这几个dll后面会用到,官方给的软件需求如下:

Database

SupportedOperatingSystems

MinimumOSVersion

MaximumOSVersion

PostgreSQL905(64-bit)

RedHatEnterpriseLinuxServer5(64-bit)

Update7

RedHatEnterpriseLinuxServer6(64-bit)

SUSELinuxEnterpriseServer11(64-bit)

SP1

WindowsServer2003Standard,Enterprise,andDatacenter(64-bit[EM64T])

SP2

SP2

WindowsServer2008R2Standard,Enterprise,andDatacenter(64-bit[EM64T])

SP1

5,配置PostgreSQL的客户端。因为直连方式要求ArcSDE的客户端必须安装数据库的客户端类库,所以首先需要获取PostgreSQL的客户端。ArcGISDesktop是32位软件,需要的是32位的PostgreSQL类库。找到PostgreSQL的客户端,或者在别的机器上将32位的libeay32dll,libiconv-2dll,libintl-8dll,libpqdll,andssleay32dll文件拷贝到Desktop安装目录的bin目录下;

6,拷贝st_geometrydll,将Desktop安装目录下的/PostgreSQL/Windows64(看到64了吧)目录下,拷贝st_geometrydll文件到PostgreSQL的lib目录。在PostgreSQL中创建Geodatabase时必须用到此类库;

7,配置pg_hbaconf,修改PostgreSQ的pg_hbaconf文件,添加“hostallall0000/0md5”(关于该文件的配置,可以参阅相关资料);

8,在安装完SDE后,发现没有以往的post界面,在101中,对于创建企业级Geodatabase都采用工具箱中提供的工具,换句话说,以前的post被Toolbox中的一堆工具替代;

9,创建地理数据库

101在创建地理数据库的时候,提供了三个,Oracle,SQLServer和Postgresql,我们用这个工具创建地理数据库,这个过程相当于早起的POST过程,创建数据库并写入一堆系统表等

以上就是关于空间数据库建库工作程序全部的内容,包括:空间数据库建库工作程序、怎样建立一个大型数据库、在本地电脑MySQL中怎么创建数据库(如何搭建mysql数据库)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9523106.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存