黄旭钊
(地矿部航空物探遥感中心,北京 100083)
地理信息系统(geographic information system;简称GIS)始于50年代;70年代以后,由于计算机硬件和软件技术的飞速发展,促使GIS朝实用方面迅速发展,一些发达国家先后建立了许多专业性的地理信息系统;80年代是GIS普及和推广应用阶段;进入90年代,随着数字化信息产品在全世界的普及,GIS逐步深入到各行各业。中国地理信息系统起步较晚,但发展很快。在地质科学发展的进程中,科学家们创造了多种认识地质现象的方法和手段,如地质、物探、化探和遥感等。利用GIS技术,探讨这些信息资源的“开发利用”方法,使其发挥更大的作用,是本文的根本目的。
GIS是一种对空间信息以数字形式进行采集、编辑、处理、存储、组织、模拟、分析并表示的计算机辅助决策系统,它由硬件、软件、数据和应用四大分量组成,其任务则包括数据输入、数据管理、数据分析和数据表示四个方面。它具有如下两个显著特点:一是它不仅可以像传统的数据库管理系统那样管理数字和属性信息,而且可以管理图形信息;二是它可以利用各种空间分析的方法对多种不同的信息进行综合分析,解决空间实体之间的相互关系,对矿产预测水平的提高,起着积极的作用。
一、软件介绍
在GIS引进推广过程中,将MapInfo作为平台,开发一套功能较强、适于应用目的的中小型GIS软件,是行之有效的。它的主要功能如下(图1)。
图1 该系统的主要功能
(一)强大的地图输入、编辑能力
MapInfo对地图的输入提供三种输入方式。
①可以通过数字化仪进行地图的输入。
②支持光栅图像的输入,其格式可以是:BMP,GIF,JPEG,PCX,SPOT(卫星航空照片位图)、TGA,TIFF为后缀的图形格式。光栅图像输入后,用户可以用MapInfo提供的强大的作图工具在其上作图、编辑,然后存成单独的矢量地图层,也可以把光栅图像作为底图显示。
③MapInfo支持标准的DXF文件的输入。
(二)地图与属性管理
MapInfo以表的形式组织文本或图形信息。每个表都有两个文件:①文件名tab,该文件描述表的结构;②文件名dat或文件名wks,dbt,xls,这些文件包含表数据;对栅格表相应的扩展名是tif、gif或bmp。如果表里已经含有图形目标还将有两个相关文件,文件名map和文件名id,前者描述图形目标,后者是连接属性数据和图形目标的交叉参考文件。这样,就可以在MapInfo内生成数据库文件。
MapInfo采用层的概念组织、管理数据,用户可根据自己对图幅及相关内容的理解,出于自身的实际需要,将某一特定的地理单元划分成不同的层,以满足单层或多层叠加浏览地理单元的需要。
(三)查询统计与空间分析
查询包括空间查询和属性查询两种方式。空间查询是根据图形目标查找对应的专业属性,属性查询则根据专业属性字段构成的数据表达式或逻辑表达式,查找对应的空间实体。该功能能够实现按单一数据项进行数据查询到按多个数据项进行复杂的SQL查询,使我们能够从大量的数据中,迅速得到分析所需要的数据,并进行统计计算。
使用GIS很重要的原因之一是要对数据项进行空间分析。MapInfo中的空间分析主要包括缓冲区分析和叠置分析。缓冲区分析是地图窗口中一个围绕线目标、区域或点等其它目标的区域,可以用设置缓冲区半径的方法控制缓冲区的大小。创建完缓冲区,就能够在缓冲区内寻找目标。叠加分析是将两个不同层内的多边形叠加合并的一种空间 *** 作。该 *** 作生成第三层,从而可对交叉区域进行分析,在MapInfo中该功能需要进一步扩充和完善。仅仅这些空间分析,不能满足成矿预测的要求,因此将传统的成矿预测方法纳入到GIS中是核心任务。目前常见的建模统计方法有信息量计算法、贝叶斯概率统计及特征向量法等。它们的基本思路是由已知典型矿床总结的矿床地质标志、地球物理标志、地球化学标志和遥感影像标志构成综合标志系列;然后,根据相应的数学模型,在选定的成矿带中建立找矿模型,再结合GIS的图形分析功能,最终形成矿产预测图。
(四)输出形式
Maplnfo是基于Windows *** 作系统上的,凡是Windows支持的外设它都自然支持。
二、地质与地球物理、地球化学概况
研究区位于四川、陕西、甘肃三省交界地带,出露地层有元古界、古生界、中生界及新生界。其中寒武—奥陶系太阳顶群、泥盆系下吾那组、三叠系是微细浸染型金矿的重要赋矿层位。
该区大地构造位置属秦岭褶皱系西段、松潘甘孜褶皱系的一部分。断裂构造十分发育,玛曲—略阳大断裂带、尕海—舟曲—成县大断裂带、玛曲—文县—勉县大断裂带均由数条与走向基本平行的主干断层组成,为多期多次活动的大断裂带,亦是重要的控矿断裂[1](图2)
图2 构造分区
Ⅰ—西秦岭加里东褶皱带;Ⅱ—西秦岭华力西褶皱带;Ⅲ—西秦岭印支褶皱带;Ⅳ—松潘甘孜褶皱系;Ⅴ—扬子准地台
岩浆活动与内生金属矿关系密切。在本区,大中型金矿床在空间分布上常常与岩体有关,与基岩有关的金矿床多分布于岩体的外接触带上。
由于该区航磁数据和重力数据比例尺较小,因此有些局部异常反映不明显。但该资料对区域构造轮廓、主要断裂构造反映比较清晰。
研究区内水系沉积物资料表明:①共生元素组合Au—As—Sb-Hg及Au—As—Sb或Au—As—Hg主要和微细粒金矿生成有关。②在金的高背景或低背景上的Au、As、Sb、Hg浓集中心有利于形成微细浸染型金矿。③较好的金矿化区,化探异常浓集中心面积并不大,背景不高,浓集中心突出,重合性好。
三、基于GIS的成矿预测方法
(一)多元地学数据的建立与管理
此次研究共收集了五种来源的地学数据,它们是地层及构造数据、矿产数据、航磁数据、重力数据、化探数据。处理流程如图3所示。
图3 处理流程
将以上这些图件通过扫描仪输入到计算机中,形成tif栅格影像文件。经过配准(一般选择四个控制点)形成tab文件,便可作为栅格影像图显示出来。地质影像图、航磁平面等值线影像图、矿床分布影像图通过屏幕跟踪实现矢量化,同时亦形成tab文件,一个tab文件由一个图层组成,代表一种专题信息。航磁剖面平面影像图、布格重力异常影像图、水系沉积物元素异常影像图未经全部矢量化,只在典型矿床上及其周围做矢量化处理。根据航磁异常和重力异常的基本特征,圈出五条隐伏大断裂及28处隐伏中酸性岩体。参考地质资料,形成断裂及岩体分布图。经过矢量化后的图层,可随时进行编辑,并可创建相应的属性数据库。
(二)查询统计
根据地层分布图,通过条件查询功能检索赋矿地层:下古生界(Pzl)、上古生界(Pz2)及三叠系(T)(图4)。从图中我们可以看到矿床(点)在各地层中的分布情况,还可以进一步作统计分析,结果见表1。
(三)空间分析与成矿远景预测
1断裂与矿床(点)相关性分析
图4 赋矿地层
表1 赋矿地层与矿床(点)统计
该区矿床与断裂关系甚为密切,因此,研究矿床到线性构造的“距离”是十分重要的。为了确定矿床与断裂构造的相关性,在控矿断裂周围每隔2km设置一个通道,共设置八个通道。设置通道的办法是用缓冲区功能来实现的,对微细浸染型金矿而言,分析结果见表2。从表中可以看出,在距断裂16km的范围内,集中了712%的矿床(点),其中包括了全部的大、中型矿床和778%的小型矿床。表中还给出了不同距离区间内出现矿产地的频数(%)。上述分析结果为确定断裂影响带宽度提供了客观依据。为此,我们以16km为缓冲区半径,做出该类型金矿的断裂影响带,这是寻找该类型金矿的有利地带。应该指出,我们选择的断裂带都是规模较大的断裂带,本身都由数条主干断层组成,具有较宽的断裂破碎带,当我们用线表示它们时,只反映了它们的中心位置,所以我们做出的断裂影响带的宽度较宽(图5)。
表2 断裂与矿床(点)“距离”统计
图5 断裂与岩体缓冲区
2中酸性岩体与矿化的关系
已知资料表明,岩浆活动与内生金属矿床关系密切。它不仅对溶液起加热和驱动作用,而且可能在成矿作用中带来某些组分。该区与岩体有关的金属矿属中低温热液型金矿,多分布于岩体外接触带附近,一般在距岩体5km的范围内。因此以5km为半径作缓冲区(图5),这亦是成矿的有利地带。
3根据水系沉积物异常圈定成矿有利区
根据1:20万水系沉积物异常,将具有Au元素异常浓集中心,或者具有Au元素异常浓集中心、同时伴生As、Sb、Hg或伴生As、Sb或伴生As、Hg元素异常,重合性好的区域确定为有利成矿区;将具有Au元素异常,但浓集中心不明显,伴生As或Sb元素异常的区域确定为较有利的成矿区。
4叠加分析
(1)断裂影响带与岩体影响带作相加运算
断裂影响带和岩体影响带都是形成金矿的有利地带,为此将断裂缓冲区与岩体缓冲区叠加并取其和,形成断裂与岩体影响带叠加图。
(2)赋矿地层与上述断裂与岩体叠加影响带作相交运算
赋矿地层是形成金矿的必要条件,断裂与岩体影响带,只有在赋矿地层中才是金矿成矿的有利地段。因此将赋矿地层图与断裂与岩体影响带叠加图再进行叠加,取相交部分。
(3)将上述结果与根据化探得到的有利成矿区作相交运算
为了更有效、更准确地得到成矿远景区,我们将上述成矿远景区与根据化探得到的有利成矿区作相交运算,从而得到如图6所示的远景区。一级远景区即赋矿地层、断裂影响带(或岩体影响带)、化探异常叠加的交集,其中有已知大中小型矿床分布。此次共圈定25处一级远景区,其中九处区域与已知矿床(点)完全吻合;六处区域包含已知矿床(点),但范围要大得多;九处区域是新圈出的区域。二级找矿远景区即赋矿地层与断裂影响带(或岩体影响带)叠加的交集;或者满足地层及地球化学找矿标志,但不处于构造有利部位;部分已知中小型矿床落在该区域内。三级找矿远景区即赋矿地层与断裂影响带(或岩体影响带)叠加的交集,该区域内没有已知的矿床(点)分布。
图6 成矿远景区
应该指出的是,上面的例子各种信息量是以等权来对待的,若首先应用上文提到的数学模型确定权重,再做叠加运算,预测效果将会更加准确。
四、结论
通过使用GIS,我们有如下几点体会。
①它改变了传统的手工 *** 作模式,可以很方便地将所需要的信息叠合,并且同时输出。
②数据库具有永久性,可以重复利用,为以后更新数据提供方便,从而减少了重复劳动。
③空间数据和属性数据的联合查询,使我们能够从大量的信息中迅速提取分析所需要的信息。
④MapInfo通过点、线和多边形把数据和地图连接在一起,单击地图上的任意对象,便可以同时看到多个与该对象相关联的所有数据。这样可以帮助我们分析数据。
参考文献
李文元,等秦岭西部微细浸染金矿成矿条件中国金矿主要类型找矿方向与找矿方法文集(第二辑),北京:地质出版社,1994
A STUDY OF METALLOGENIC PROGNOSTIC TECHNIQUE BASED ON GIS
Huang Xuzhao
(Aerogeophysical Survey and Remote—Sensing Center,Beijing 100083)
Abstract
The geophysical information system(GIS)has greatly raised the multi-purpose utilization level of spatial data for metallogenic prognosisIts importance is that it plays the role of a bridge which links the traditional manual superimposition technique with the mathematic technique of spatial analysis,thus avoiding many artificial factors imposed on metal-logenic prognosisBased on evaluation of metallogenic conditions and integrated prognosis for mineral resources in Sichuan-Shaanxi-Gansu triangular area,this paper discusses the application of GIS technique to metallogenic prognosis
Dos 环境下使用SQlLoader命令 加载
使用其它数据库的数据转移工具
Oracle 企业管理器中的数据加载功能
具体的技术实现
一、Dos 环境下加载
1、首先,服务器端的侦听服务必须已经开启。
测试方法:Dos 下输入
2、然后使用 Oracle 的 sqlldr 命令进行数据的导入
前期条件
1) Oracle 数据库端必须已经建好了需要导入的数据表的结构
2) 一个数据源文件 下面例子中为制表符分隔的文本文件 modeltxt ,为Excel 表中导出的
3) 手工编辑一个XXXCTL 的控制文件
4) 命令行加载数据
如下实例:
以下文件缺省放到C:\ 下,如果不是,就需要指明全路径
1. 命令控制文件 inputctl 内容
命令
说明
load data
1、控制文件标识
infile 'modeltxt'
2、要输入的数据文件名为testtxt
append into table system塔位属性表
3、向表test中追加记录
fields terminated by X'09'
4、指定分隔符,字段终止于X'09',是一个制表符(TAB)
(编号,名称,大小)
5、定义列对应表中顺序
控制文件中指定插入数据的方式关键字
insert,为缺省方式,在数据装载开始时要求表为空
append,在表中追加新记录
replace,删除旧记录,替换成新装载的记录
truncate,同上
在 Dos 窗口下使用 SQlLoader 命令实现数据的导入
C:\>sqlldr userid=system/manager@ serviceName control=inputctl
默认日志文件名为:inputlog
默认坏记录文件为:inputbad
二、使用其它数据库转移工具
以下以SQL Server 导入导出向导为例
1、在数据的导入导出向导中设置数据源服务器,实例中选择数据源选择SQL Server
2、然后指定要导入的Oracle 数据源
3、需要配置Oracle 的属性信息
需要注意的是,登录数据库的用户信息即为数据导入之后的方案名,即导入之后的SQL Server 中的表在Oracle 中标志名为 username表名
以下按照提示即可,可以完全导入SQl Server 中的数据表和视图,也可以使用查询语句返回你要选择的列或者行。
三、Oracle 企业管理器中的数据加载功能
登录Oracle 的控制台界面,针对单独的数据表可以使用数据加载工具
中间需要指定控制文件等,同Dos 加载一致,不再重复
----------------------------------------------------
向Oracle中导入文本数据时使用的控制文件格式
无论是使用上一篇中的哪种方式都需要有一个控制文件,下面是控制文件(ctl文件)书写的基本格式:
命令
说明
load data
1、控制文件标识
infile 'testltxt'
2、要输入的数据文件名为testtxt,此时是要导入的数据文件同控制文件在同一路径下,如果不在同一路径下则需要写完整路径名
append into table 表名(可以是全名也可以是同义词)
3、向表test中追加记录
fields terminated by X'09'
4、指定分隔符,字段终止于X'09',是一个制表符(TAB),如果用逗号分割就将X'09'替换为','
(编号,名称,大小)
5、定义列对应表中顺序
控制文件中指定插入数据的方式关键字
insert,为缺省方式,在数据装载开始时要求表为空
append,在表中追加新记录
replace,删除旧记录,替换成新装载的记录
truncate,同上
控制文件的示例:
load data
infile 'testtxt'
append into table testtest
fields terminated by X'09'
(test,test1,test2)
对有时间类型的数据导入的示例控制文件:
load data
infile 'h:\TB_FACT_PHS_TICKET_DAYtxt'
Append into TABLE TB_FACT_PHS_TICKET_DAY
fields terminated by X'09'
(Time_Id
,Region_Id
,Cust_Type_Id
,Prod_Type_Id
,Acct_Item_Type_Id
,Acct_Item_Type_Cd
,Exchange97_Cd
,Latn_Cd
,Call_Duration
,Access_In_Duration
,Income
,In_Date Date "YYYY-MM-DD"
)
文件导入命令 C:\>sqlldr userid=test/test@test control=testctl(此时控制文件testctl存在C:\路径下)
在命令控制符下进入Oracle C:\>sqlplus username/password@serviceName
oracle导入txt数据文件2008年07月30日 星期三 17:21把txt文件格式的数据文件导入oracle的方法是利用sqlloader工具。
第一步:把文本格式的数据文件放入C盘。如,testtxt
第二步:建立控制文件appendctl。(名字可以随便取,放C盘下)
appendctl的内容如下:
load data --1、控制文件标识
infile 'testtxt' --2、要输入的数据文件名为testtxt
append into table CTXSYStest --3、向CTXSYS表空间中的表test中追加记录
fields terminated by X'09' --4、字段终止于X'09',是一个制表符
(id,username,password,sj) -----定义列对应顺序
其中append为数据装载方式,还有其他选项:
a、insert,为缺省方式,在数据装载开始时要求表为空
b、append,在表中追加新记录
c、replace,删除旧记录,替换成新装载的记录
d、truncate,同上
第三步:在命令提示符下输入命令。
C:\>sqlldr userid=username/password
control=c:\appendctl 数据库中用名的用户名和密码
或者 C:\>sqlldr userid=system/manager@ serviceName control=inputctl
----------------------------------------------------
一些经常出现的问题:
1。关于日期格式的问题:
ctl基本写法诸如:
load data
infile 'C:/TP_LOANCONTRACTSUMtxt'
insert into table TP_LOANCONTRACTSUM
fields terminated by '|!'
(
column01,
column02,
column03,
column04 "to_date(:column04,'''yyyy-mm-dd hh24:mi:ss''')",
column05 "to_date(:column05,'''yyyy-mm-dd hh24:mi:ss''')",
column06,
column07,
column08,
column09,
column10,
column11,
column12 "to_date(:column12,'''yyyy-mm-dd hh24:mi:ss''')",
column13
)
2。关于长字符串问题,CTL默认情况下是256位(或者256位左右),所以长字符串时会在log里报错,提示所输入的值超过最大长度,解决办法,在ctl文件里再指定大小,注意个情况,不能写VARCHAR只能写CHAR,否则报错,诸如:
load data
infile 'C:/TP_PLEDGECONTRACTINFOtxt'
insert into table TP_PLEDGECONTRACTINFO
fields terminated by '|!'
(
column01,
column02,
column03,
column04,
column05,
column06,
column07 "to_date(:column07,'''yyyy-mm-dd hh24:mi:ss''')",
column08,
column09,
column10 "to_date(:column10,'''yyyy-mm-dd hh24:mi:ss''')",
column11,
column12,
column13,
column14,
column15 "to_date(:column15,'''yyyy-mm-dd hh24:mi:ss''')",
column16,
column17,
column18 "to_date(:column18,'''yyyy-mm-dd hh24:mi:ss''')",
column19,
column20,
column21,
column22,
column23,
column24,
column25 "to_date(:column25,'''yyyy-mm-dd hh24:mi:ss''')",
column26 CHAR(500),
column27,
column28
)
ctl 的写法
危险品货运
精选推荐
广告

SQLLoader 向oracle数据库批量添加数据 ctl文件 使用方式详见文章
17下载·0评论
2017年9月11日
20150622 sqlldr及ctl文件
2234阅读·0评论·0点赞
2015年6月22日
Oracle sqlldr命令和ctl控制文件
8731阅读·6评论·3点赞
2019年10月21日
txt导入mysql ctl_用Oracle sqlldr导入文本文件TXT
354阅读·0评论·0点赞
2021年2月3日
linux中ctl文件注释,linux apachectl命令参数及用法详解--Apache >
select tab1id,tab1name,tab2count,tab2paytime
from tab1,tab2 where tab1name='团购月饼' and tab2count>5
order by paytime desc
while not table1eof do
begin
str:='';
for i=0 to 12 do
str:=str+table1field[i]asstring+' ';
memo1linesadd(str+#13);
end;
memo1linessavetofile('c:\aaatxt') // savetofile这个可能是错的,记不住了,反正存盘的函数
以上就是关于基于GIS的成矿预测方法研究全部的内容,包括:基于GIS的成矿预测方法研究、ctl文件去字段值中的tab、数据库中两张表,tab1(id,name),tab2(id,count,paytime),两表以id作为外键进行关联。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)