《oracle10g教师讲义10893.pptx》由会员分享,可在线阅读,更多相关《oracle10g教师讲义10893.pptx(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Oracle培训大纲lOracle简介lOracle简单管理lOracle编程l课后练习Oracle简介简介Oracle简介简介loracle是殷墟(Yin Xu)出土的甲骨文(oracle bone inscriptions)的英文翻译的第一个单词,在英语里是“神谕”的意思Oracle数据库发展历史(一)l1977年6月,Larry Ellison与Bob Miner和Ed Oates在硅谷共同创办了一家名为软件开发实验室(Software Development Laboratories,SDL)的计算机公司(ORACLE公司的前身);l1979年的夏季发布了可用于DEC公司的PDP-11
2、计算机上的商用ORACLE产品;l1983年3月,发布了ORACLE第3版,Miner和Scott历尽艰辛用C语言重新写就这一版本;l1984年10月,ORACLE发布了第4版产品;l1985年,ORACLE发布第5版;l1988年,ORACLE第6版,Miner带领着工程师对数据库核心进行了重新的改写,引入了行级锁(row-level locking)这个重要的特性;l1992年6月 ORACLE第7版;Oracle数据库发展历史(二)l1997年6月,ORACLE第8版;l1998年9月,ORACLE公司正式发布ORACLE 8i。“i”代表Internet,这一版本中添加了大量为支持In
3、ternet而设计的特性。这一版本为数据库用户提供了全方位的Java支持支持;l在2001年6月的ORACLE OpenWorld大会中,ORACLE发布了ORACLE 9i,在ORACLE 9i加入Real Application Clusters(RAC)-集群;l2003年9月8日的ORACLE World大会上,Ellison宣布下一代数据库产品为“ORACLE 10g”;l2007年11月,Oracle 11g正式发布,“g”代表“grid,网格”。这一版的最大的特性就是加入了网格计算的功能。ORACLE简单管理管理目录l一、数据库管理l二、表空间管理l三、用户权限管理l四、数据字典
4、l五、闪回l六、时区l七、工具一、数据库管理l启动监听程序命令llsnrctl start|stop|status|l登录lsqlplus soctt/tigerorcl;-使用用户登录lsqlplus/as sysdba;-作为系统管理员登录lsqlplus /nolog;-无用户登录数据库启动l启动数据库命令(作为管理员登录后在sqlplus中使用)lshutdown -事务处理完成后停止数据库lshutdown immediate;-立即停止数据库lshutdown abort;-强行终止shutdown操作lstartup nomount;-启动数据库,不挂载lalter databa
5、se mount;-修改数据库状态lalter database open;-修改数据为打开Oracle启动过程SHUTDOWNNOMOUNTMOUNTOPEN启动实例数据库安装数据库打开0123配置命令l企业管理器命令lemctl start|stop|status dbconsolel配置命令ldbca -创建数据库lnetca -配置网络服务名lemca -配置企业管理器ClientServertnsnames.oralistener.oralistener.oratnsnames.ora二、表空间管理lSYSTEM 表空间l非SYSTEM表空间CREATE TABLESPACE tbl
6、sname DATAFILE*.dbf SIZE 50M DROP TABLESPACE app_data INCLUDING CONTENTS and DATAFILES;ALTER TABLESPACE app_data READ ONLYON OFFLINE;ALTER DATABASE DATAFILE DISK5/app02.dbf RESIZE 200M;三、用户权限管理lSystem privileges:数据库内执行特殊活动的权限lObject privileges:对数据库对象操作的权限lSchemas:表、视图、序列的集合角色ROLEl创建删除角色创建删除角色lCREATE
7、 ROLE rolenamelDROP ROLE rolename cascadel赋值给角色赋值给角色lGRANT create table,create view TO rolename;l赋权给用户赋权给用户lGRANT rolename TO username;用户USERlDBA执行建立用户操作CREATE USER user IDENTIFIED BY password;l修改用户口令lALTER USER user IDENTIFIED BY password;l删除用户lDROP USER user cascade;四、数据字典lDBA_XXX:l带有DBA 前缀的视图显示整个
8、数据库的全局视图。lALL_XXX:l带有ALL前缀的视图指的是从用户角度看到的完整数据库视图。lUSER_XXX:l带有USER前缀的视图,用户自己的视图五、闪回FLASHBACKl使用简单语句回复删除的表l恢复表的数据和索引和约束l可以恢复表到相应的检查点FLASHBACK TABLEschema.table,schema.table.TO TIMESTAMP|SCN expr ENABLE|DISABLE TRIGGERS;六、数据库时区l支持国际化l查看数据库时区信息:lSELECT DBTIMEZONE FROM DUAL;l查看session时区信息:lSELECT SESSION
9、TIMEZONE FROM DUAL;l查看时区信息lSELECT*FROM V$TIMEZONE_NAMES;七、数据库实用工具lSQLPLUS/ISQLPLUS 命令行工具lEXP/IMP 数据导入导出工具lSQLLOAD 文本数据导入工具lEM 数据库管理工具Oracle编程一、SQL语言l SQL语言共分为四大类:l数据查询语言DQLl数据操纵语言DML l数据定义语言DDLl数据控制语言DCL lSQL中使用的函数lDecode()(1)数据查询语言DQLSELECT SELECT*|DISTINCT column|expression alias,.FROM WHERE.SELEC
10、T,FROM GROUP BY HAVING ;连接语句JOINl多表连接l左/有连接(+)l自连接SELECT table1.column,table2.columnFROM table1CROSS JOIN table2|NATURAL JOIN table2|JOIN table2 USING(column_name)|JOIN table2ON(table1.column_name=table2.column_name)|LEFT|RIGHT|FULL OUTER JOIN table2ON(table1.column_name=table2.column_name);(2)数据操纵语
11、言l数据操纵语言DML主要有三种形式:l插入:INSERT l更新:UPDATE l删除:DELETE l合并:MEGERINSERT ALL和和INSERT FIRSTlINSERT ALL和和INSERT FIRST 一、无条件 INSERT ALL 二、条件 INSERT ALL 三、条件 INSERT FIRST lInsertSelect 使用Insert Select实现同时向多个表插入记录 (3)数据定义语言DDL l数据定义语言DDL用来管理数据库中的各种对象CREATEl表l视图l序列l索引l同义词l数据库链路l文件系统目录l其他对象创建表的约束lOracle提供了5种完整性
12、约束:lChecklNOT NULLlUniquelPrimarylForeign key其他DDLlTRUNCATElDROPlALTERlRENAME(4)数据控制语言DCLl 数据控制语言DCL用来授予或回收访问数据库的某种特权l并控制数据库操纵事务发生的时间及效果,对数据库实行监视等。lGRANT lREVOKElROLLBACK lCOMMITlSAVEPOINT 其他操作lGROUP BY语句除了最基本的语法外,ROLLUP和CUBE语句l集合操作lUNION、UNION ALL、INTERSECT、MINUSl树浏览SELECT LEVEL,column,expr.FROM ta
13、bleWHERE condition(s)START WITH condition(s)CONNECT BY PRIOR condition(s)二、PLSQL编程DECLAREBEGIN -statementsEXCEPTIONEND;PROCEDURE nameISBEGIN -statementsEXCEPTIONEND;FUNCTION nameRETURN datatypeISBEGIN -statements RETURN value;EXCEPTIONEND;PL/SQL数据类型l标量类型(Scalar)l复合类型(Composite)l参照类型(Reference)lLOB类型
14、(Large Object)流程控制l条件控制l循环控制l顺序控制PL/SQL块l过程l函数l包l触发器工具包lDBMS_OUTPUTlDBMS_LOBlDBMS_JOBlDBMS_SQLlDBMS_ALTERlUTL_FILE课后练习练习一、l安装oracle 10g并使用l1、安装oraclel2、删除scott用户l3、使用sqlplus 执行$ORACLE_HOMERDBMSADMIN下的utlsampl.sql要求写出2,3步操作的语句练习二、在scott用户下 创建一个实现阶乘的函数并执行返回结果 (要提交函数代码和执行该函数的语句)练习三、l在SCOTT用户下编写一个存储过程实现数据插入l1、按照表emp的结构创建一个emp_new表l2、用两种方式将emp表中deptno=20的数据插入到emp_new中l(a:游标 b:inset into)l提供可编译执行的过程练习四、l用一条SQL语句实现数据库表中重复数据的删除(整条记录重复)练习五、l了解锁l了解分区表演讲完毕,谢谢观看!