收藏 分销(赏)

员工培训讲稿Oracle培训.pptx

上传人:a199****6536 文档编号:9197329 上传时间:2025-03-16 格式:PPTX 页数:226 大小:4.66MB 下载积分:20 金币
下载 相关 举报
员工培训讲稿Oracle培训.pptx_第1页
第1页 / 共226页
员工培训讲稿Oracle培训.pptx_第2页
第2页 / 共226页


点击查看更多>>
资源描述
单击此处编辑母版文本样式,第二级,第三级,第四级,单击此处编辑母版标题样式,打造中国金融,IT,服务业第一品牌,#,单击此处编辑母版文本样式,第二级,第三级,第四级,单击此处编辑母版标题样式,打造中国金融,IT,服务业第一品牌,#,宇信易诚员工培训,-ORACLE,培训,目录,1,ORACLE,数据库简介,ORACLE SQL,2,ORACLE,数据库对象,3,Oracle,体系结构,每一个,Oracle,数据库都是一个数据的集合,这些数据包含在一个或多个文件中。数据库有物理和逻辑两种结构。,Oracle,实例由被称为系统全局区,(system global area,,,SGA),的内存区域和相应的后台进程组成。这些后台进程负责,SGA,和数据库磁盘文件之间的交互。,Oracle,服务器,Oracle,数据库,Oracle,实例,Oracle,主要组件,实 例,内存结构,后台进程,PMON SMON DBWR LGWR CKPT,其他,数据库,数据文件,数据文件,数据文件,控制文件,控制文件,日志文件,日志文件,参数文件,归档日志文件,口令文件,SGA,用户进程,服务器进程,PGA,共享池,数据缓冲区,日志缓冲区,Oracle,会话,会话是用户与,Oracle,服务器的单个连接,当用户与服务器建立连接时创建会话,当用户与服务器断开连接时关闭会话,启动,Oracle,实例,使用,SQL*Plus,连接,至数据库,创建用户进程,创建服务器进程,提交,SQL,查询,系统全局区,SGA,数据库信息存储于,SGA,,由多个数据库进程共享,共享池,数据缓冲区,日志缓冲区,SGA,的内存结构,系统全局区,SGA,共享池,共享池是对,SQL,、,PL/SQL,程序进行语法分析、编译、执行的内存区域,共享池由库缓存和数据字典缓存组成。,共享池的大小直接影响数据库的性能。,数据缓冲区,用于存储从磁盘数据文件中读入的数据,所有用户共享。,服务器进程将读入的数据保存在数据缓冲区中,当后续的请求需要这些数据时可以在内存中找到,不需要再从磁盘读取,提高了读取速度。,数据缓冲区的大小对数据库的读取速度有直接的影响。,日志缓冲区,日志记录数据库的所有修改信息,日志信息首先产生于日志缓冲区。,当日志缓冲区的日志数据达到一定数量时,由后台进程将日志数据写入日志文件中。,相对来说,日志缓冲区对数据库的性能影响较小。,程序全局区,PGA,程序全局区(,PGA,)包含单个服务器进程所需的数据和控制信息,PGA,是在用户进程连接到数据库并创建一个会话时自动分配的,保存每个与,Oracle,数据库连接的用户进程所需的信息,PGA,为非共享区,只能单个进程使用,当一个用户会话结束,,PGA,释放,后台进程,PMON,进程监控进程,清理出现故障的进程。,释放所有当前挂起的锁定。,释放故障进程使用的资源。,SMON,系统监控进程,在实例失败之后,重新打开数据库时自动恢复实例。,整理数据文件的自由空间,将相邻区域结合起来。,释放不再使用的临时段,DBWR,数据写入进程,管理数据缓冲区,将最近使用过的块保留在内存中。,将修改后的缓冲区数据写入数据文件中。,LGWR,日志写入进程,负责将日志缓冲区中的日志数据写入日志文件。,系统有多个日志文件,该进程以循环的方式将数据写入文件,.,Oracle,物理组件,物理组件就是,Oracle,数据库所使用的操作系统物理文件。物理文件可分为三类:,物理组件,数据文件,控制文件,日志文件,数据文件用于存储数据库数据,如表、索引数据等。,控制文件是记录数据库物理结构的二进制文件。,日志文件记录对数据库的所有修改信息,用于故障恢复,Oracle,逻辑组件,数据库的逻辑结构是从逻辑的角度分析数据库的组成。,Oracle,的逻辑组件包括:,数据库,表空间,段,区,数据块,Oracle,逻辑组件,表空间是数据库中最大的逻辑单位,一个,Oracle,数据库至少包含一个表空间,就是名为,SYSTEM,的系统表空间。,每个表空间是由一个或多个数据文件组成的,一个数据文件只能与一个表空间相关联。,表空间的大小等于构成该表空间的所有数据文件大小之和。,Oracle,逻辑组件,段,段是构成表空间的逻辑存储结构,段由一组区组成。,按照段所存储数据的特征,将段分为四种类型,即数据段、索引段、回退段和临时段。,区,区为段分配空间,它由连续的数据块组成。,当段中的所有空间已完全使用时,系统自动为该段分配一个新区。,区不能跨数据文件存在,只能存在于一个数据文件中。,数据块,数据块是,Oracle,服务器所能分配、读取或写入的最小存储单元。,Oracle,服务器以数据块为单位管理数据文件的存储空间,Oracle,网络配置,Oracle,产品安装完成后,服务器和客户端都需要进行网络配置才能实现网络连接。,服务器端配置监听器,客户端配置网络服务名。,tnsnames.ora,Oracle,客户端,listener.ora,Oracle,服务器,Oracle,网络配置,服务器端监听器配置信息包括监听协议、地址及其他相关信息。配置信息保存在名为,listener.ora,的文件中。在安装服务器软件时自动配置一个监听器,客户端的网络服务名配置信息包括服务器地址、监听端口号和数据库,SID,等,与服务器的监听器建立连接。配置信息保存在名为,tnsnames.ora,的文件中,Oracle,中的,Net Configuration Assistant,和,Net Manager,工具都能用来配置监听器和网络服务名,总结,Oracle,服务器由,Oracle,数据库和,Oracle,实例组成,Oracle,实例由系统全局区内存结构和用于管理数据库的后台进程组成,Oracle,数据库由操作系统文件组成,这些文件为数据库信息提供实际物理存储区,Oracle,数据库包括逻辑结构和物理结构,目录,2,ORACLE,数据库简介,ORACLE SQL,1,ORACLE,数据库对象,3,基本,SQL SELECT,语句,基本,SELECT,语句,SELECT,标识选择哪些列。,FROM,标识从哪个表中选择。,选择全部列,选择特定的列,Writing SQL Statements,SQL,语言大小写不敏感。,SQL,可以写在一行或者多行,关键字不能被缩写也不能分行,各子句一般要分行写。,使用缩进提高语句的可读性。,算术运算符,数字和日期使用的数学表达式。,使用数学运算符,操作符优先级,乘除的优先级高于加减。,同一优先级运算符从左向右执行。,括号内的运算先执行。,操作符优先级,使用括号,列的别名,列的别名,:,重命名一个列。,便于计算。,紧跟列名,也可以在列名和别名之间加入关键字,AS,,以便在别名中包含空格或特殊的字符并区分大小写。,使用别名,连接符,连接符,:,把列与列,列与字符连接在一起。,用,|,表示。,可以用来合成列。,字符串,字符串可以是,SELECT,列表中的一个字符,数字,日期。,日期和字符只能在单引号中出现。,每当返回一行时,字符串被输出一次。,重复行,默认情况下,查询会返回全部行,包括重复行。,删除重复行,在,SELECT,子句中使用关键字,DISTINCT,删除重复行,总结,通过本课,您应该可以完成,:,书写,SELECT,语句,:,返回表中的全部数据。,返回表中指定列的数据。,使用别名。,作业,1,查询,employees,表列出所有办事员的姓名(,FIRST_NAME+LAST_NAME,)、编号(,EMPLOYEE_ID,)和部门(,DEPARTMENT_ID,)其中姓名字段需要将,FIRST_NAME,列和,LAST_NAME,进行字符串连接,查询,employees,表列出所有办事员的,EMPLOYEE_ID,,,SALARY,,其中,SALARY,列需要显示办事员的收入为原始收入乘以,2,。,过滤和排序数据,在查询中过滤行,返回在,90,号部门工作的所有员工的信息,过滤,使用,WHERE,子句,将不满足条件的行过滤掉。,WHERE,子句紧随,FROM,子句。,字符和日期,字符和日期要包含在单引号中。,字符大小写敏感,日期格式敏感。,默认的日期格式是,DD-MON-RR,(如,6/21/1999,)。,比较运算,其它比较运算,BETWEEN,IN,LIKE,使用,LIKE,运算选择类似的值,选择条件可以包含字符或数字,:,%,代表一个或多个字符。,_,代表一个字符。,LIKE,%,和,-,可以同时使用。,NULL,使用,NULL,判断空值。,逻辑运算,AND,AND,要求与的关系为真。,OR,OR,要求或关系为真。,NOT,优先级,优先级,优先级,ORDER BY,子句,使用,ORDER BY,子句排序,ASC:,升序,DESC:,降序,ORDER BY,子句在,SELECT,语句的结尾。,降序排序,按别名排序,多个列排序,总结,通过本课,您应该可以完成,:,使用,WHERE,子句过滤数据,使用比较运算,使用,BETWEEN,IN,LIKE,和,NULL,运算,使用逻辑运算符,AND,OR,和,NOT,使用,ORDER BY,子句进行排序。,作业,2,查询,employees,表选择部门(,department_id,)为,30,中的雇员,显示不带有,“R”,的雇员姓名(,first_name,),.,显示雇员的详细资料,按姓名(,first_name,)排序,.,找出不收取佣金(,null,)或收取的佣金低于,500,的雇员,单行函数,SQL,函数,单行函数,单行函数,:,接受函数返回一个结果,只对一行进行变换,每行返回一个结果,可以转换数据类型,可以嵌套,参数可以是一列或一个值,单行函数,字符函数,大小写控制函数,大小写控制函数,字符控制函数,字符控制函数,数字函数,ROUND:,四舍五入,ROUND(45.926,2)45.93,TRUNC:,截断,TRUNC(45.926,2)45.92,MOD:,求余,MOD(1600,300)100,MOD,函数,日期,Oracle,内部使用数字存储日期,:,世纪,年,月,日,小时,分钟,秒。,默认的日期格式是,DD-MON-RR.,可以只指定年的后两位在,20,世纪存放,21,世纪的日期。,同样可以在,21,世纪存放,20,世纪的日期。,日期,函数,SYSDATE,返回,:,日期,时间,日期的数学运算:,在日期上加上或减去一个数字结果仍为日期。,两个日期相减返回日期之间相差的天数。,可以用数字除,24,来向日期中加上或减去小时。,日期函数,日期函数,MONTHS_BETWEEN(01-SEP-95,11-JAN-94),ADD_MONTHS(11-JAN-94,6),NEXT_DAY(01-SEP-95,FRIDAY),LAST_DAY(01-FEB-95),19.6774194,11-JUL-94,08-SEP-95,28-FEB-95,日期函数,Assume SYSDATE=25-JUL-95:,ROUND(SYSDATE,MONTH),ROUND(SYSDATE,YEAR),TRUNC(SYSDATE,MONTH),TRUNC(SYSDATE,YEAR),01-AUG-95,01-JAN-96,01-JUL-95,01-JAN-95,转换函数,隐式数据类型转换,Oracle,自动完成下列转换:,显式数据类型转换,TO_CHAR,函数对日期的转换,格式,:,必须包含在单引号中而且大小写敏感。,可以包含任意的有效的日期格式。,可以使用,fm,去掉多余的空格或者前导零。,与日期指用逗号隔开。,日期格式的元素,日期格式的元素,时间格式,HH24:MI:SS AM 15:45:32 PM,使用双引号向日期中添加字符,DD of MONTH 12 of OCTOBER,TO_CHAR,函数对日期的转换,TO_CHAR,函数对数字的转换,下面是在,TO_CHAR,函数中经常使用的几种格式,:,TO_NUMBER,和,TO_DATE,函数,嵌套函数,单行函数可以嵌套。,嵌套函数的执行顺序是由内到外。,NVL,函数,将空值转换成一个已知的值:,可以使用的数据类型有日期、字符、数字。,函数的一般形式,:,NVL(commission_pct,0),NVL(hire_date,01-JAN-97),NVL(job_id,No Job Yet),使用,NVL,函数,条件表达式,在,SQL,语句中使用,IF-THEN-ELSE,逻辑。,使用两种方法,:,CASE,表达式,DECODE,函数,CASE,表达式,DECODE,函数,总结,通过本章学习,您应该学会,:,使用函数对数据进行计算,使用函数修改数据,使用函数控制一组数据的输出格式,使用函数改变日期的显示格式,使用函数改变数据类型,使用,NVL,函数,使用,IF-THEN-ELSE,逻辑,作业,3,查询,emp,表找出各月最后一天受雇的所有雇员,.,以年,-,月,-,日显示所有雇员的,yyyy-mm-dd,emp,表,多表查询与分组函数,多表查询,从多个表中获取数据,笛卡尔集,为了避免笛卡尔集,可以在,WHERE,加入有效的连接条件。,Oracle,连接,使用连接在多个表中查询数据,在,WHERE,字句中写入连接条件。,在表中有相同列时,在列名之前加上表名前缀。,内连接,内连接只返回满足连接条件的数据,内连接,对于多个连接条件使用,AND,操作符,对于区分重复的列名,使用表名前缀在多个表中区分相同的列。,使用表名可以提高效率。,在不同表中具有相同列名的列可以用别名加以区分。,对于多个表可以使用表的别名,使用别名可以简化查询。,使用表名前缀可以提高执行效率。,外连接,两个表在连接过程中除了返回满足连接条件的行以外还返回左(或右)表中不满足条件的行,这种连接称为左(或右)外联接。,两个表在连接过程中除了返回满足连接条件的行以外还返回两个表中不满足条件的行,这种连接称为满外联接。,左外联接,右外联接,满外联接,增加连接条件,分组函数,分组函数作用于一组数据,并对一组数据返回一个值。,组函数类型与语法,AVG,COUNT,MAX,MIN,STDDEV,SUM,AVG,(平均值)和,SUM,(合计)函数,可以对数值型数据使用,AVG,和,SUM,函数。,MIN,(最小值)和,MAX,(最大值)函数,可以对任意数据类型的数据使用,MIN,和,MAX,函数。,COUNT,(计数)函数,COUNT(*),返回表中记录总数。,DISTINCT,关键字,COUNT(DISTINCT expr),返回,expr,非空且不重复的记录总数,组函数与空值,组函数忽略空值。,在组函数中使用,NVL,函数,NVL,函数使分组函数无法忽略空值。,分组数据,分组数据,:GROUP BY,子句,可以使用,GROUPBY,子句将表中的数据分成若干组,在,SELECT,列表中所有未包含在组函数中的列都应该,包含在,GROUP BY,子句中。,分组数据,:GROUP BY,子句,包含在,GROUP BY,子句中的列不必包含在,SELECT,列表中。,使用多个列分组,在,GROUP BY,子句中包含多个列,过滤分组,过滤分组:,HAVING,子句,使用,HAVING,过滤分组,:,1.,行已经被分组。,2.,使用了组函数。,3.,满足,HAVING,子句中条件的分组将被显示。,嵌套组函数,显示平均工资的最大值,作业,查询,emp,表求每个部门的总工资,求部门的总工资,只显示总工资小于,10000,的部门,子查询和集合,使用子查询解决问题,子查询,子查询,(,内查询,),在主查询之前一次执行完成。,子查询的结果被主查询使用,(,外查询,),。,子查询注意事项,子查询要包含在括号内。,将子查询放在比较条件的右侧。,除非进行,Top-N,分析,否则不要在子查询中使用,ORDER BY,子句。,单行操作符对应单行子查询,多行操作符对应多行子查询。,子查询类型,单行子查询,只返回一行。,使用单行比较操作符。,执行单行子查询,子查询中的空值问题,多行子查询,返回多行。,使用多行比较操作符。,在多行子查询中使用,ANY,操作符,在多行子查询中使用,ALL,操作符,集合,UNION,操作符,UNION,操作符返回两个查询的结果集的并集,UNION,操作符举例,UNION ALL,操作符,UNION ALL,操作符返回两个查询的结果集的并集以及两个结果集的重复部分(不去重),UNION ALL,操作符举例,INTERSECT,操作符,INTERSECT,操作符返回两个结果集的交集,INTERSECT,操作符举例,MINUS,操作符,MINUS,操作符返回两个结果集的补集,MINUS,操作符举例,总结,通过本章学习,您已经学会,:,在什么时候遇到什么问题应该使用子查询。,在查询是基于未知的值时应使用子查询。,使用,UNION,操作符,使用,UNION ALL,操作符,使用,INTERSECT,操作符,使用,MINUS,操作符,作业,查找所有,10,部门的经理和,20,部门的办事员,查询工资要大于部门所有人的工资,大于部门的最高工资,处理数据,数据控制语言,DML,可以在下列条件下执行,:,向表中插入数据,修改现存数据,删除现存数据,事务是由完成若干项工作的,DML,语句组成的。,插入数据,插入数据,为每一列添加一个新值。,按列的默认顺序列出各个列的值。,在,INSERT,子句中随意列出列名和他们的值。,字符和日期型数据应包含在单引号中。,向表中插入空值,隐式方式,:,在列名表中省略该列的值。,显示方式,:,在,VALUES,子句中指定空值。,插入指定的值,从其它表中拷贝数据,在,INSERT,语句中加入子查询,不必书写,VALUES,子句。,子查询中的值列表应于,INSERT,子句中的列名对应。,更新数据,更新数据,使用,UPDATE,语句更新数据。,可以一次更新多条数据。,使用,WHERE,子句指定需要更新的数据。,如果省略,WHERE,子句,则表中的所有数据都将被更新。,在,UPDATE,语句中使用子查询,更新,114,号员工的工作和工资使其与,205,号员工相同。,删除数据,删除数据,使用,DELETE,语句从表中删除数据。,使用,WHERE,子句指定删除的记录。,如果省略,WHERE,子句,则表中的全部数据将被删除。,在,DELETE,中使用子查询,在,DELETE,中使用子查询,使删除基于另一个表中的数据。,数据库事务,数据库事务由以下的部分组成,:,一个或多个,DML,语句,一个,DDL,语句,一个,DCL,语句,以第一个,DML,语句的执行作为开始,以下面的其中之一作为结束,:,COMMIT,或,ROLLBACK,语句,DDL,或,DCL,语句(自动提交),用户会话正常结束,COMMIT,和,ROLLBACK,语句的优点,使用,COMMIT,和,ROLLBACK,语句,我们可以,:,确保数据完整性。,数据改变被提交之前预览。,将逻辑上相关的操作分组。,回滚到保留点,使用,SAVEPOINT,语句在当前事务中创建保存点。,使用,ROLLBACK TOSAVEPOINT,语句回滚到创建的保存点,事务进程,自动提交在以下情况中执行,:,DDL,语句。,DCL,语句。,会话异常结束或系统异常会导致自动回滚。,提交或回滚前的数据状态,改变前的数据状态是可以恢复的,执行,DML,操作的用户可以通过,SELECT,语句查询之前的修正,其他用户不能看到当前用户所做的改变,直到当前用户结束事务。,DML,语句所涉及到的行被锁定,其他用户不能操作。,提交后的数据状态,数据的改变已经被保存到数据库中。,改变前的数据已经丢失。,所有用户可以看到结果。,锁被释放,其他用户可以操作涉及到的数据。,所有保存点被释放。,提交数据,改变数据,提交改变,数据回滚后的状态,使用,ROLLBACK,语句可使数据变化失效,:,数据改变被取消。,修改前的数据状态可以被恢复。,锁被释放。,读一致性,读一致性为数据提供一个一致的视图。,一个用户的对数据的改变不会影响其他用户的改变。,对于相同的数据读一致性保证,:,查询不等待修改。,修改不等待查询。,总结,通过本章学习,您应学会如何使用,DML,语句改变数据和事务控制,作业,为表,DEPT80,插入一行数据,Employee_id:1587,Name:John,Email:lindsey,Hire_date:sysdate,Job_id:AD_PRES,更新,DEPT80,表,将,lindsey,的工资和岗位修改为与,Ellen,完全相同,删除雇员,lindsey,目录,ORACLE,数据库简介,ORACLE SQL,1,ORACLE,数据库对象,2,3,常见的数据库对象,表,创建表,命名规则,表名和列名,:,必须以字母开头,必须在,130,个字符之间,必须只能包含,AZ,az,09,_,$,和,#,必须不能和用户定义的其他对象重名,必须不能是,Oracle,的保留字,Oracle,数据库中的表,用户定义的表,:,用户自己创建并维护的一组表,包含了用户所需的信息,数据字典,:,由,Oracle Server,自动创建的一组表,包含数据库信息,查询数据字典,数据类型,使用子查询创建表,ALTER TABLE,语句,使用,ALTERTABLE,语句可以,:,追加新的列,修改现有的列,为新追加的列定义默认值,删除一个列,追加一个新列,修改一个列,删除一个列,删除表,数据和结构都被删除,所有正在运行的相关事物被提交,所有相关索引被删除,DROP TABLE,语句不能回滚,改变对象的名称,执行,RENAME,语句改变表,视图,序列,或同义词的名称,必须是对象的拥有者,清空表,TRUNCATE TABLE,语句,:,删除表中所有的数据,释放表的存储空间,TRUNCATE,语句不能回滚,可以使用,DELETE,语句删除数据,约束,约束是表级的强制规定,约束放置在表中删除有关联关系的数据,有以下五种约束,:,NOT NULL,UNIQUE,PRIMARY KEY,FOREIGN KEY,CHECK,NOT NULL,约束,UNIQUE,约束,UNIQUE,约束,PRIMARY KEY,约束,PRIMARY KEY,约束,FOREIGN KEY,约束,FOREIGN KEY,约束,CHECK,约束,定义每一行必须满足的条件,以下的表达式是不允许的,:,出现,CURRVAL,NEXTVAL,LEVEL,和,ROWNUM,伪列,使用,SYSDATE,UID,USER,和,USERENV,函数,在查询中涉及到其它列的值,添加与删除约束,总结,通过本章学习应该掌握,如何建立一个表,如何给表的列上增加主键,外键等约束,修改和删除表,作业,建立,author,表,列名:,id number(3),Name:varchar2(10),Sal:number(6,2),维护,author,表,为,author,表增加一列,address,varchar2(100),修改,author,表,sal,列为,number(20,2),删除,author,表,在,dept,表的,name,列增加唯一约束,un_dept_name,在,dept,表的,eno,列上增加主键约束,pk_emp01,视图,视图,为什么使用视图,控制数据访问,简化查询,数据独立性,避免重复访问相同的数据,简单视图和复杂视图,创建视图,查询视图,修改视图,创建复杂视图,删除视图,总结,通过本章学习,您已经了解视图的优点和基本应用,:,控制数据访问,简化查询,数据独立性,删除时不删除数据,作业,基于,emp,表的雇员号、雇员名、工资和部门号建立简单视图,emp_vu,并定义列名为,eno,、,name,、,sal,、,dno,删除视图,emp_vu,其他数据库对象,序列,序列,:,自动提供唯一的数值,共享对象,主要用于提供主键值,代替应用代码,将序列值装入内存可以提高访问效率,创建序列,创建序列,DEPT_DEPTID_SEQ,为表,DEPARTMENTS,提供主键,使用,CYCLE,选项,NEXTVAL,和,CURRVAL,伪列,NEXTVAL,返回序列中下一个有效的值,任何用户都可以引用,CURRVAL,中存放序列的当前值,NEXTVAL,应在,CURRVAL,之前指定,二者应同时有效,序列应用举例,使用序列,将序列值装入内存可提高访问效率,序列在下列情况下出现裂缝,:,回滚,系统异常,多个表同时使用同一序列,修改序列,修改序列的增量,最大值,最小值,循环选项,或是否装入内存,修改序列的注意事项,必须是序列的拥有者或对序列有,ALTER,权限,只有将来的序列值会被改变,改变序列的初始值只能通过删除序列之后重建序列的方法实现,删除序列,使用,DROP SEQUENCE,语句删除序列,删除之后,序列不能再次被引用,索引,索引,:,一种数据库对象,通过指针加速,Oracle,服务器的查询速度,通过快速定位数据的方法,减少磁盘,I/O,索引与表相互独立,Oracle,服务器自动使用和维护索引,创建索引,自动创建,:,在定义,PRIMARY KEY,或,UNIQUE,约束后系统自动在相应的列上创建唯一性索引,手动创建,:,用户可以在其它列上创建非唯一的索引,以加速查询,创建索引,在表,EMPLOYEES,的列,LAST_NAME,上创建索引,什么时候创建索引,以下情况可以创建索引,:,列中数据值分布范围很广,列中包含大量空值,列经常在,WHERE,子句或连接条件中出现,表经常被访问而且数据量很大,访问的数据大概占数据总量的,2%,到,4%,什么时候不要创建索引,下列情况不要创建索引,:,表很小,列不经常作为连接条件或出现在,WHERE,子句中,查询的数据大于,2%,到,4%,表经常更新,加索引的列包含在表达式中,查询索引,可以使用数据字典视图,USER_INDEXES,和,USER_IND_COLUMNS,查看索引的信息,基于函数的索引,基于函数的索引是一个基于表达式的索引,索引表达式由列,常量,SQL,函数和用户自定义的函数,删除索引,同义词,使用同义词访问相同的对象,:,方便访问其它用户的对象,缩短对象名字的长度,创建和删除同义词,总结,通过本章学习,您已经可以,:,使用序列,通过数据字典视图,USER_SEQUENCES,查看序列信息,使用索引提高查询效率,通过数据字典视图,USER_INDEXES,查看索引信息,为数据对象定义同义词,作业,基于,emp,表的,deptno,、,job,列建立复合索引,idx_dept_job,建立序列,deptno_seq:,序列初值,50,、序列增量,1,、序列最大值,90,以,scott,用户登录到数据库,基于,emp,表建立同义词,emp1,Q&A,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服