扩展名与应用程序的对应关系
Windows所支持的文件类型(这些文件具有一定的文件扩展名)在HKEY_CLASSES_ROOT根键下定义。下表中列出了HKEY_CLASSES_ROOT根键中的文件扩展名和文件类型之间的关系。
文件扩展名和文件类型间的关系
文件扩展名 文件类型 文件扩展名 文件类型
386 vxd文件(这是一个虚拟设备驱动程序) ADM ADM_auto_文件
ai application/postscript文件 aif aiff文件
aifc aiff文件 aiff aiff文件
ani ani文件(光标动画文件) art art文件
au au文件(用于Internet传输的声音文件) awd FaxView文档(用于传真的显示)
snd au文件 avi avi文件(由Video forWindows支持)
bat bat文件(DOS、Windows下的批处理文件) bfc Briefcase(这是一种公文包文件)
bmp Paintpicture(这是一个由画图附件所产生的文件) cda cda文件
cnf Conferencelink(这是一个会议连接) crt certificate
文件(这是一
个用于安全方
面的证书认证
文件)
der certificate文件 clp Clipboard文件(用于保存剪贴板中的内容)
cmd cmd文件(这是一个文本文件,主要用于命令解释) com com文件(这是DOS、Windows上一个命令解释程序,如commandcom、winco等)
cpl cpl文件 css text/css文件
cur cur文件(用于存放光标资源) dat DAT_auto_文件
dcx DCXImageDocument(这是一个DCXImage产生的文档) DIC Txt文件
dll dll文件(这是一个Windows上使用的动态链接库文件) shb DocShortCut(这是DOC文件的快捷方式)
drv drv文件(Windows上的设备驱动程序) xla EXCELAddin
xlk ExcelBackup xlc ExcelChart5
csv ExcelCSV xld ExcelDialog
dif ExcelDIF xlb ExcelSheet5
xls ExcelSheet5 slk ExcelSLK
xlt ExcelTemplate xlv ExcelVBAModule
xlw ExcelWorkspace xll ExcelXLL
xlm ExcelMacroSheet xif XIFImageDocument(这是一个XIFImage
产生的文档)
exe exe文件(这是DOS、Windows下可执行文件) fnd fnd文件
fon fon文件(这是Windows的TTF字库的索引文件) gif gif文件
goc gocserve hlp help文件(Windows下帮助文件)
ht ht文件 htm html文件(这是超文本标记语言文件)
html html文件 ico ico文件(这是Windows的图标文件)
inf inf文件(这是一个信息安装文件) ini ini文件(Windows的初始化文件)
url InternetShortcut(这是Internet上URL地址的快捷方式) job JobObject
jfif jpeg文件 jpe jpeg文件
jpg jpeg文件 lnk lnk文件(这是Windows上的快捷方式)
mid mid文件 mmm MPlayer
mlv MPEG文件(这是一
个视频文件) mak mak文件
man application/x-trof-man格式的文件 MAPI
Mail CLSID\{9E56BE60-C50F-11CF-9A2C-00A0C90A90CE}(这是一个类标识)
mcc Dialer10CallingCard(这是一个电话卡文件) mov mov文件(这是一个由QuickTime for
Windows支持的视频文件)
mov
ie video/x-sgi-movie格式文件 mp2 MPEG文件
mpa MPEG文件 mpe MPEG文件
mpeg MPEG文件 mpg MPEG文件
msn MSNetworkDocument(这
是一个MSN软件产生的文件) rmi mid文件
gra MSGraphChart5 grp MSProgramGroup(这是一个由程序管理器产生的组窗口文件)
obd OfficeBinder95 obt OfficeBinderTemplate
obz OfficeBinderWizard ofn OfficeFileNew(这是一个由Office新
创建的文件
PBK MSN_PhoneBook pcx PCXImageDocument
nws MicrosoftInternet News
Message pif pif文件
pma Perf文件 ps application/postscript格式文件
pmc Perf文件 pml Perf文件
pmr Perf文件 pmw Perf文件
pfm pfm文件 pnf pnf文件
que QueueObject qt MOV文件
ra ReadAudio文件 ram ReadAudio文件
reg reg文件(注册表文件) rnk rnk文件
rpm audio/x-pn-realaudio-
plugin格式文件 rtf WordRTF
scr scr文件 shs ShellScrap
sit application/x-stuffit格式文件 sys sys文件
tif TIFImageDocument tiff TIFImageDocument
ttf ttf文件 ttc ttc文件
EXC txt文件 log txt文件
scp txt文件(脚本文件) txt txt文件
pic ViewerFrameClass vir vir文件
vsd VisioDrawing4 vss VisioDrawing4
vst VisioDrawing4 vsw VisioDrawing4
wav wav文件 ARC Winzip
ARJ Winzip gz Winzip
LZH Winzip tar Winzip
taz Winzip tgz Winzip
z Winzip zip Winzip
wll WordAddin wbk WordBackup
DOT WordTemplate wiz WordWizard
doc WordDocument wri wri文件
xbm xbm文件(image/x-xbitmap格式文件) xif XIFImage
Document
uls uls文件( text/iuls格式文件) WHT Whiteboard
WPS wps文件
特殊扩展名与应用程序的对应关系
我们在注册表编辑器中可以发现,HKEY_CLASSES_ROOT根键下的文件扩展名子键(如、bas等)前面有“+”符号,而且在此文件扩展名中没有对应的应用程序。为了查明这些文件后缀与应用程序之间的关系,我们必须单击“+”一次或者几次,才可以看到它们的关系。
下面简要地介绍这些特殊的文件后缀子键。
子键
子键下面具有如下层次结构:
HKEY_CLASSES_ROOT\
HKEY_CLASSES_ROOT\\shellex
HKEY_CLASSES_ROOT\\shellex\PropertySheetHandlers
HKEY_CLASSES_ROOT\\shellex\PropertySheetHandlers\{3EA48300-8CF6-101B-84FB-666CCB9BCD32}
此层次结构说明了子键的文件类型与 Windows系统中的外壳扩展中的属性页句柄建立了一种关联。
bas子键
bas子键下面具有如下层次结构:
HKEY_CLASSES_ROOT\bas
HKEY_CLASSES_ROOT\bas\shell
HKEY_CLASSES_ROOT\bas\shell \open
HKEY_CLASSES_ROOT\bas\shell \open \command
此层次结构说明了bas子键与command子键所指定的应用程序建立了关联。在command子键中还有如下设置:
#@=E:\VB\vbexe %1
也就是说,bas文件后缀与E:\VB\vbexe关联。
bmp子键
bmp子键下面具有如下层次结构:
HKEY_CLASSES_ROOT\bmp
HKEY_CLASSES_ROOT\bmp \ShellNew
在ShellNew子键下面只有一个设置:
#NullFile=:将NullFile设置为空串,以便能将bmp文件扩展名添加到系统的新建菜单中。
1创建分区表,INCLUSIVE(包含),exclusive(不包含)
CREATE TABLE "MABAS""BAS_MID_TRANS_LIST_CK_BAK" ( "REPORT_DATE" DATE, "MA_ACCT_NO" VARCHAR(100), "TRANS_DATE" DATE, "ORG_UNIT_ID" VARCHAR(15), "ORG_PROD_ID" VARCHAR(15), "CURR_CD" VARCHAR(15), "ACCT_NO" VARCHAR(15), "TRANS_NUM" VARCHAR(15), "TRANS_NO" VARCHAR(15), "TRANS_DIF" VARCHAR(15), "DEPOSIT_CHAR" VARCHAR(15), "DEPOSIT_BAL" DECIMAL(18,2), "TRANS_AMT" DECIMAL(18,2), "TRANS_TYPE" CHARACTER(1), "FLG" CHARACTER(1), "RATE" DECIMAL(18,6), "TRXMEM" DECIMAL(4,0)) IN "MA_DATA" INDEX IN "MA_INDEX" PARTITION BY RANGE ( "REPORT_DATE" NULLS LAST ) ( PARTITION PART0 STARTING '2010-12-10' INCLUSIVE ENDING '2010-12-20' INCLUSIVE ) ;
ALTER TABLE "MABAS""BAS_MID_TRANS_LIST_CK_BAK" DATA CAPTURE NONE LOCKSIZE ROW APPEND OFF NOT VOLATILE;
COMMENT ON TABLE "MABAS""BAS_MID_TRANS_LIST_CK_BAK" IS '活期交易明细表';
COMMENT ON "MABAS""BAS_MID_TRANS_LIST_CK_BAK" ( "REPORT_DATE" IS '数据日期', "MA_ACCT_NO" IS '管会账号', "TRANS_DATE" IS '营业日期', "ORG_UNIT_ID" IS '行所号', "ORG_PROD_ID" IS '业务品种 ', "CURR_CD" IS '币别', "ACCT_NO" IS '帐号', "TRANS_NUM" IS '交易序号', "TRANS_NO" IS '交易代号', "TRANS_DIF" IS '交易区别', "DEPOSIT_CHAR" IS '存款性质 ', "DEPOSIT_BAL" IS '存款余额', "TRANS_AMT" IS '交易金额', "TRANS_TYPE" IS '交易别', "FLG" IS '连动标志', "RATE" IS '汇率' );
GRANT CONTROL ON TABLE "MABAS""BAS_MID_TRANS_LIST_CK_BAK" TO USER "DB2INST2";
GRANT SELECT, INSERT, UPDATE, ALTER, DELETE, INDEX, REFERENCES ON TABLE "MABAS""BAS_MID_TRANS_LIST_CK_BAK" TO USER "DB2INST2" WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, ALTER, DELETE, INDEX, REFERENCES ON TABLE "MABAS""BAS_MID_TRANS_LIST_CK_BAK" TO USER "DB2INST2" WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, ALTER, DELETE, INDEX, REFERENCES ON TABLE "MABAS""BAS_MID_TRANS_LIST_CK_BAK" TO USER "MAPUB" WITH GRANT OPTION;
2增加分区,注意这里的INCLUSIVE,exclusive,这时只有2011-01-31的数据可以进行insert
alter table MABASBAS_MID_TRANS_LIST_CK_BAK add partition LIST_CK_bak0131 STARTING '2011-01-31' INCLUSIVE ENDING '2011-02-01' exclusive
3insert 数据
insert into MABASBAS_MID_TRANS_LIST_CK_BAK select from MABASBAS_MID_TRANS_LIST_CK where report_date=date('2011-01-31');
4转移分区到临里表
alter table MABASBAS_MID_TRANS_LIST_CK_BAK detach partition LIST_CK_bak0131 into MABASBAS_MID_TRANS_LIST_CK_BAK1
5删除生成的分区迁移表,注意这时分区表的分区(LIST_CK_bak0131)己经不存在了,如果要insert必须新增该分区
drop table MABASBAS_MID_TRANS_LIST_CK_BAK1
以下为应用写的shell脚本,并参照syscatdatapartitions 进行判断,如果有则删除分区,否则进行新建,以下为具体的脚本。
/home/odSUSEr1/profile#配置文件SYSNAME=GDBMAMADS_HOME=/home/odsuser1/gdbma/etl#DS ConfigDSConfigFile=$MADS_HOME/dsconfig_gdbma#MARPT ETL2数据库#DB信息DBNAME=`awk 'FS="=" {if ($0~/^MABASDBName/) print $2}' $DSConfigFile`DBUSR=`awk 'FS="=" {if ($0~/^MABASDBUser/) print $2}' $DSConfigFile`DBPWD=`awk 'FS="=" {if ($0~/^MABASDBPassword/) print $2}' $DSConfigFile`DBSCHEMA=`awk 'FS="=" {if ($0~/^MABASDBSchema/) print $2}' $DSConfigFile`DBPWD=`$MADS_HOME/Encrypt/discryptsh $DBPWD`dbname=$DBNAMEuser=$DBUSRpasswd=$DBPWD#连接数据库db2 connect to $DBNAME user $DBUSR using $DBPWD >/dev/nulldb2 set schema=$DBSCHEMA;#传递参数JOB_NAME=$1DELETE_DATE=$2#DELETE_DBSCHEMA=$1#DELETE_TAB=$2#DELETE_COL=$3#DELETE_TYPE=$4#DELETE_DATE=$5#DELETE_VALUE=$6
delete_tab="select SCH_NAME,TAB_NAME,IF_PARTITION,TAB_DATE,DEL_VALUE from mabass_job_info_m t where JOB_NAME = '"$JOB_NAME"' "DEL_DATA=`db2 -t "$delete_tab"`if [ $ -ne 0 ]thenecho "$SDATA"fiecho "$DEL_DATA" | sed -e '4,/^$/!d;/^$/d'|#循环读取job,然后调度while read SCH_NAME TAB_NAME IF_PARTITION TAB_DATE DEL_VALUEdo#判断删除方式#分区字段拼写if [ "$IF_PARTITION" = 'Y' ] then #分区进行拼写 partiton_name=`db2 -tx "select upper('p'||replace(varchar(date('"$DELETE_DATE"')),'-','')) from sysibmsysdummy1 "` tmp_tab=`db2 -tx "select upper('tmp'||substr(replace(replace(varchar(current timestamp),'-',''),'',''),5,10)) from sysibmsysdummy1 "` #判断分区是否存在 vi_result=`db2 -tx "select count() from syscatdatapartitions t where tabschema = upper('"$SCH_NAME"') and tabname = upper('"$TAB_NAME"') and datapartitionname=upper('"$partiton_name"') "` #对分区进行操作 if [ "$DEL_VALUE" = '-' ] then #判断分区是否存在 if [ $vi_result -ne 0 ] then #进行分区数据到临时表 alter_parition=`db2 -tx "alter table $SCH_NAME$TAB_NAME detach partition $partiton_name into $SCH_NAME$tmp_tab"` #删除临时表 drop_tmp=`db2 -tx "drop table $SCH_NAME$tmp_tab"` #分区结束 partition_end=`db2 -tx "select varchar(date('"$DELETE_DATE"') +1 days) from sysibmsysdummy1"` #增加分区 add_partition=`db2 -tx "alter table $SCH_NAME$TAB_NAME add partition $partiton_name STARTING '"$DELETE_DATE"' INCLUSIVE ENDING '"$partition_end"' exclusive "` else #分区结束 partition_end=`db2 -tx "select varchar(date('"$DELETE_DATE"') +1 days) from sysibmsysdummy1"` #增加分区 add_partition=`db2 -tx "alter table $SCH_NAME$TAB_NAME add partition $partiton_name STARTING '"$DELETE_DATE"' INCLUSIVE ENDING '"$partition_end"' exclusive "` fi else if [ $vi_result -ne 0 ] then #进行分区数据到临时表 drop_parition=`db2 -tx "alter table $SCH_NAME$TAB_NAME detach partition $partiton_name into $SCH_NAME$tmp_tab "`
欢迎分享,转载请注明来源:浪漫分享网
评论列表(0条)