ETL基础及常用技术培训PPT文件格式下载.ppt
《ETL基础及常用技术培训PPT文件格式下载.ppt》由会员分享,可在线阅读,更多相关《ETL基础及常用技术培训PPT文件格式下载.ppt(87页珍藏版)》请在冰点文库上搜索。
新增(append)a:
从光标所在位置後面开始新增资料,光标後的资料随新增资料向後移动。
A:
从光标所在列最後面的地方开始新增资料。
插入(insert)i:
从光标所在位置前面开始插入资料,光标後的资料随新增资料向後移动。
I:
从光标所在列的第一个非空白字元前面开始插入资料。
开始(open)o:
在光标所在列下新增一列并进入输入模式。
O:
在光标所在列上方新增一列并进入输入模式。
最新课件,shell基础,Vi(三)、基本编辑配合一般键盘上的功能键,像是方向键、Insert、Delete等等,现在你应该已经可以利用vi来编辑文件了。
当然vi还提供其他许许多多功能让文字的处理更为方便。
何谓编辑?
一般认为是文字的新增、修改以及删除,甚至包括文字区块的搬移、复制等等。
先这里介绍vi的如何做删除与修改。
删除与修改文件的命令:
x:
删除光标所在字符。
dd:
删除光标所在的列。
r:
修改光标所在字元,r後接著要修正的字符。
R:
进入取替换状态,新增文字会覆盖原先文字,直到按ESC回到指令模式下为止。
s:
删除光标所在字元,并进入输入模式。
S:
删除光标所在的列,并进入输入模式。
在指令模式下移动光标的基本指令是h,j,k,l。
最新课件,shell基础,Vi(四)、退出vi在指令模式下键入:
q,:
q!
:
wq或:
x(注意:
号),就会退出vi。
其中:
wq和:
x是存盘退出,而:
q是直接退出,如果文件已有新的变化,vi会提示你保存文件而:
q命令也会失效,这时你可以用:
w命令保存文件后再用:
q退出,或用:
x命令退出,如果你不想保存改变后的文件,你就需要用:
命令,这个命令将不保存文件而直接退出vi。
shell基础,注释#变量在shell编程中,所有的变量都由字符串组成,并且不需要对变量进行声明。
要赋值给一个变量,可以这样写:
变量名=值取出变量值可以加一个美元符号($)在变量前面shell脚本中的三类命令1)Unix命令2)管道,重定向和backtick3)流程控制,shell基础unix命令,在shell脚本中可以使用任意的unix命令,这些命令通常是用来进行文件和文字操作的。
常用命令语法及功能:
echosometext:
将文字内容打印在屏幕上ls:
文件列表wclfilewc-wfilewc-cfile:
计算文件行数计算文件中的单词数计算文件中的字符数cpsource:
文件拷贝mvoldnamenewname:
重命名文件或移动文件rmfile:
删除文件greppatternfile:
在文件内搜索字符串比如:
grepsearchstringcut-bcolnumfile:
指定欲显示的文件内容范围,并将它们输出到标准输出设备比如:
输出每行第5个到第9个字符cut-b5-9千万不要和cat命令混淆,这是两个完全不同的命令,最新课件,shell基础unix命令,ftp:
远程传输文件然后输入用户名密码,put,getcat:
输出文件内容到标准输出设备(屏幕)上:
得到文件类型readvar:
提示用户输入,并将输入赋值给变量sort:
对文件中的行进行排序uniq:
删除文本文件中出现的行列比如:
sort|uniqexpr:
进行数学运算Example:
add2and3expr2+3find:
搜索文件比如:
根据文件名搜索find.-name-printtee:
将数据输出到标准输出设备(屏幕)和文件比如:
somecommand|teeoutfilebasenamefile:
返回不包含路径的文件名比如:
basename/bin/tux将返回tux,最新课件,shell基础unix命令,dirnamefile:
返回文件所在路径比如:
dirname/bin/tux将返回/binheadfile:
打印文本文件开头几行tailfile:
打印文本文件末尾几行sed:
Sed是一个基本的查找替换程序。
可以从标准输入(比如命令管道)读入文本,并将结果输出到标准输出(屏幕)。
该命令采用正则表达式(见参考)进行搜索。
不要和shell中的通配符相混淆。
比如:
将linuxfocus替换为LinuxFocus:
cattext.file|seds/linuxfocus/LinuxFocus/newtext.fileawk:
awk用来从文本文件中提取字段。
缺省地,字段分割符是空格,可以使用-F指定其他分割符。
cat|awk-F,print$1,$3这里我们使用,作为字段分割符,同时打印第一个和第三个字段。
如果该文件内容如下:
AdamBor,34,IndiaKerryMiller,22,USA命令输出结果为:
AdamBor,IndiaKerryMiller,USAtar:
将文件或文件夹打包解包,tarcvfa.tarabctarxvfa.tar,shell基础管道、重定向和backtick命令,管道(|)将一个命令的输出作为另外一个命令的输入。
grephello|wc-l在中搜索包含有”hello”的行并计算其行数。
在这里grep命令的输出作为wc命令的输入重定向将命令的结果输出到文件,而不是标准输出(屏幕)写入文件并覆盖旧文件加到文件的尾部,保留旧文件内容。
反短斜线()使用反短斜线可以将一个命令的输出作为另外一个命令的一个命令行参数。
命令:
V_date=date+%F,最新课件,shell基础流程控制命令(if),ifThen.elifThen.Else.fi大多数情况下,可以使用测试命令来对条件进行测试。
比如可以比较字符串、判断文件是否存在及是否可读等等通常用来表示条件测试。
注意这里的空格很重要。
要确保方括号的空格。
-fsomefile:
判断是否是一个文件-x/bin/ls:
判断/bin/ls是否存在并有可执行权限-n$var:
判断$var变量是否有值$a=$b:
判断$a和$b是否相等,最新课件,shell基础流程控制命令(if),字符串比较:
string1=string2如果相等则为真string1!
=string2如果不等则为真-nstring如果不空则为真-zstring如果为空则为真算术比较:
expression1-eqexpression2如果相等则为真expression1-neexpression2如果不等则为真expression1-gtexpression2如果大于则为真expression1-geexpression2大于等于则为真expression1-ltexpression2如果小于则为真expression1-leexpression2小于等于则为真,最新课件,shell基础流程控制命令(if),文件:
-dfile如果为目录则为真-efile如果存在则为真(在这里要注意的是,由于历史原因,-e选项并不可移植,所以常用的是-f选项-ffile如果为常规文件则为真-gfile如果设置了组ID则为真-rfile如果文件可读则为真-sfile如果文件大小不为零则为真-ufile如果设置了用户ID则为真-wfile如果文件可写则为真-xfile如果文件可执行则为真,最新课件,shell基础流程控制命令,1)while.Do.Donewhile-loop将运行直到表达式测试为真。
willrunwhiletheexpressionthatwetestforistrue.关键字break用来跳出循环。
而关键字”continue”用来不执行余下的部分而直接跳到下一个循环。
2)forvarin.do.Donefor-loop表达式查看一个字符串列表(字符串用空格分隔)然后将其赋给一个变量:
3)case.in.).;
Esaccase表达式可以用来匹配一个给定的字符串,最新课件,oracle基础数据库安装,Windows环境下:
网上下载安装包点击安装全选默认配置即可。
其它机器上已有server端,可只安client端。
PLSQL软件是一个优秀的oracle工具,建议安装unix环境下:
建oracle组和用户在oracle用户下安装授予其它用户执行oracle命令的权限,最新课件,oracle基础数据库的连接,Client端连接配置到oracle安装目录下搜索tnsnames.ora增加修改相应连接内容ORCL=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=cg)(PORT=1521)(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)mdb=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=128.160.96.21)(PORT=1521)(CONNECT_DATA=(SERVER=DEDICATED)(SID=mdb),最新课件,oracle基础数据库的连接,Unix环境先设置编辑器exportEDITOR=viselectparameter,valuefromnls_database_parameterswhereparameter=NLS_CHARACTERSET;
-显示数据库字符集NLS_LANG应与数据库字符集一致exportNLS_LANG=“SIMPLIFIEDCHINESE.ZHS16GBK”exportNLS_DATE_FORMAT=YYYY-MM-DD-HH24.MI.SS命令行:
sqlplususername/passwordserverassysdbaassysopersqlplus/assysdba-管理员进入sqlplusetl/etlmdb-普通用户进入SQLsetlinesize300;
-设置行长度SQLsetpagesize1;
-设置页长度SQLcolnameformata30;
-设置列格式SQLselectsysdatefromdual;
-运行语句,最新课件,oracle基础数据库的连接,Plsql是一款优秀的操作oracle图形界面软件Sqlwindow可单条执行sqlCommandwindow可批量执行多条sql,最新课件,oracle基础表空间,ORACLE数据库被划分成称作为表空间的逻辑区域形成ORACLE数据库的逻辑结构。
一个ORACLE数据库能够有一个或多个表空间,而一个表空间则对应着一个或多个物理的数据库文件。
表空间是ORACLE数据库恢复的最小单位,容纳着许多数据库实体,如表、视图、索引、聚簇、回退段和临时段等。
每个ORACLE数据库均有SYSTEM表空间,这是数据库创建时自动创建的。
SYSTEM表空间必须总要保持联机,因为其包含着数据库运行所要求的基本信息(关于整个数据库的数据字典、联机求助机制、所有回退段、临时段和自举段、所有的用户数据库实体、其它ORACLE软件产品要求的表)。
一个小型应用的ORACLE数据库通常仅包括SYSTEM表空间,然而一个稍大型应用的ORACLE数据库采用多个表空间会对数据库的使用带来更大的方便。
最新课件,oracle基础表空间,建立本地管理表空间CREATETABLESPACEtablespace_nameDATAFILESIZEUNIFORMSIZEextent_size|AUTOALLOCATECREATETABLESPACEDATATBS01_32KDATAFILE/home/mdb/oracle/oradata/mdb/datatbs01_01.dbfSIZE100G,/home/mdb/oracle/oradata/mdb/datatbs01_02.dbfSIZE100G,/home/mdb/oracle/oradata/mdb/datatbs01_03.dbfSIZE100G,EXTENTMANAGEMENTLOCALUNIFORMSIZE32MSEGMENTSPACEMANAGEMENTAUTOblocksize32k,最新课件,oracle基础表空间,建立UNDO表空间CREATEUNDOTABLESPACEtablespace_nameDATAFILESIZEUNIFORMSIZEextent_size|AUTOALLOCATE建立临时表空间:
存放查询、排序、分组等生成的临时数据CREATETEMPORARYTABLESPACEtablespace_nameTEMPFILESIZEUNIFORMSIZEextent_size|AUTOALLOCATE,最新课件,oracle基础表空间,改变表空间可用性ALTERTABLESPACEtablespace_nameonline|offline改变表空间读写状态ALTERTABLESPACEtablespace_nameREADWRITE|READONLY改变表空间名称ALTERTABLESPACEtablespace_nameRENAMETOnew_tbs_name设置默认表空间ALTERDATABASEDEFAULTTABLESPACEtablespace_name-数据库默认表空间ALTERDATABASEDEFAULTTEMPORARYtablespace_name-数据库默认临时表空间删除表空间DROPTABLESPACEtablespace_nameINCLUDINGCONTENTSANDDATAFILES;
最新课件,oracle基础用户管理,建立用户createuserETLidentifiedbydefaulttablespaceETLDATA01temporarytablespaceTEMP1pro;
给用户授权grantconnecttoetl;
grantselect_catalog_roletoetl;
grantselectanytabletoetl;
grantcreatesessiontoetl;
grantaltersessiontoetl;
grantcreatetabletoetl;
grantcreateviewtoetl;
grantcreatetypetoetl;
grantcreatesynonymtoetl;
grantcreatesequencetoetl;
grantcreateproceduretoetl;
最新课件,oracle基础用户管理,修改口令ALTERUSERuser_nameIDENTIFIEDBYnew_password;
修改默认表空间ALTERUSERuser_nameDEFAULTTABLESPACEnew_tablespace_name;
锁定用户ALTERUSERetlACCOUNTLOCK;
解锁用户ALTERUSERetlACCOUNTUNLOCK;
删除用户DROPUSERusernameCASCADE;
最新课件,oracle基础表建立及管理,普通建表CREATETABLEschema.table_name(column_namedatatypeDEFAULTexpr,)TABLESPACEtablespace_name;
使用子查询建表CREATETABLEschema.table_name(column_name,)TABLESPACEtablespace_nameASsubquery;
建临时表-事务临时表当前事务内有效CREATEGLOBALTEMPORARYTABLEtable_name(column_name,)ONCOMMITDELETEROWS;
-会话临时表当前会话内有效CREATEGLOBALTEMPORARYTABLEtable_name(column_name,)ONCOMMITPRESERVEROWS;
最新课件,oracle基础表建立及管理,增加列ALTERTABLEtable_nameADD(columndatatypeDEFAULTexpr);
修改列定义ALTERTABLEtable_nameMODIFY(columndatatypeDEFAULTexpr);
删除列ALTERTABLEtable_nameDROP(column);
修改列名ALTERTABLEtable_nameRENAMECOLUMNcolumn_nametonew_column_name;
增加注释COMMENTONTABLEtable_nameIStext;
COMMENTONCOLUMNtable_name.column_nameIStext;
迁移非分区表的表空间ALTERTABLEtable_nameMOVEnew_tablespace_name;
-表对应索引需重建,最新课件,oracle基础表建立及管理,截断表-快速删除数据释放空间保留表结构-是DDL语句不可回退TRUNCATETABLEtable_name;
-delete是DML语句可回退删除表-PURGE是oracle10g新特性表永久删除DROPTABLEtable_nameCASCADECONSTRAINTSPURGE;
从回收站Recyclebin恢复被删除表FLASHBACKTABLEtable_nameTOBEFOREDROP;
清空回收站PURGERECYCLEBIN;
查看回收站SELECT*FROMRECYCLEBIN;
最新课件,oracle基础表建立及管理,表SELECT*FROMUSER_TABLES;
对象SELECT*FROMUSER_OBJECTS;
表占用的空间selectsum(bytes)fromuser_segmentswheresegment_name=table_name;
查看表的列SELECT*FROMUSER_TAB_COLUMNS;
查看注释SELECT*FROMUSER_TAB_COMMENTS;
SELECT*FROMUSER_COL_COMMENTS;
查看建表语句SELECTdbms_metadata.get_ddl(TABLE,)FROMdual;
SELECTdbms_metadata.get_ddl(TABLE,upper(tmpcg_ctl_paravalue),upper(etl)FROMdual;
最新课件,oracle基础索引,建索引CREATEINDEXUNIQUEindex_nameONtable_name(column_name,.)TABLESPACEtablespace_name;
-不设表空间则建在用户默认表空间上维护索引ALTERINDEXindex_nameREBUILDTABLESPACEtablespace_name;
-可改变索引表空间显示索引信息SELECT*FROMUSER_INDEXES;
SELECT*FROMUSER_IND_COULMNS;
-查找失效的非分区索引SELECT*FROMUSER_INDEXESWHERESTATUS=UNUSABLE;
查看建索引语句SELECTdbms_metadata.get_ddl(INDEX,)FROMdual;
SELECTdbms_metadata.get_ddl(INDEX,upper(idx_tmpcg_ctl_paravalue),upper(etl)FROMdual;
最新课件,oracle基础序列,序列(Sequence)是用于生成唯一数字的数据库对象,自动生成顺序递增的序列号,可提供唯一的主键值,事务回滚值不会减少建序列CREATESEQUENCEseq_nameINCREMENTBYnSTARTWITHnMAXVALUEn|NOMAXVALUE;
MINVALUEn|NOMINVALUECYCLE|NOCYCLECACHEn|NOCACHE;
使用序列INSERTINTOt1(id)VALUES(t1id_seq.NEXTVAL);
SELECTt1id_seq.CURRVALFROMdual;
删除序列DROPSEQUENCEseq_name;
显示序列信息SELECT*FROMSEQ;
查看建序列语句SELECTdbms_metadata.get_ddl(SEQUENCE,)FROMdual;
最新课件,oracle基础分区表,ORACLE的分区(PartitioningOption)是一种处理超大型表的