1、请解释以下几个函数意思:NVL、TRUNC、DECODE、TO_DTAE、TO_CHAR、CONVERT、ROUND、TRIM、ISNULL、SUBSTR、GROUP BY、HAVING

答:

NVL用于对查询来出来为空值的字段, 输出一个预设的默认值,常见的用法是:

NVL(arg, value), 即如果arg不为空值,那么输出的是arg的值; 如果arg为空,则输出的是value的值,

此外还有个函数为NVL2, 其用法是NVL2(expr1, expr2, expr3),如果表达式expr1的值不为空,则输出表达式expr2的值, 如果expr1为空, 则输出expr3的值。

TRUNC

可用于根据给定的格式对日期进行截取, 其用法是TRUNC(date[,format]),如果format被省略, 则截断到最近的天;另外也可用对数字进行处理,指定小数被截取的部分。

DECODE是根据条件值来选择返回的结果,类似于IF-ELSE语句,其用法是:

decode(条件, 值1, 返回值1, 值2, 返回值2, …, 值n, 返回值n,缺省值)

根据条件计算的结果, 来选择返回的值, 匹配那个就返回那个, 如果一个都不匹配, 则返回的是缺省值。

TO_DATE函数可以将CHAR或者VARCHAR2类型的值转换为DATE类型的值, 使用方法为:

TO_DATE(str[,format])

TO_CHAR可将输入值(数字或者日期)转换成一个VARCHAR2的字符串,常见的用法为:

TO_CHAR(number|date, [format])

CONVERT函数的转换是用于将字符串从一个字符集转化为另一个字符集,其用法为:

CONVERT(char, dest_char_set [, source_char_set]),其中char表示要转换的字符串,dest_char_set表示要转换成的目的字符集,source_char_set是char的原本字符集,如果缺省,则默认是数据库的字符集。

ROUND函数用于对数字进行四舍五入的, 其用法为:

ROUND(number, num_digits), 其中number是需要进行四舍五入的数字;num_digits为指定的位数,按此位数进行四舍五入,如果 num_digits 大于 0,则四舍五入到指定的小数位,如果 num_digits 等于 0,则四舍五入到最接近的整数,如果 num_digits 小于 0,则在小数点左侧进行四舍五入

TRIM主要用于去除指定字符的前后的空格,其用法为TRIM(str)

另外LTRIM是去除字符串左边的空格, RTRIM是去除字符串右边的空格

ISNULL好像不是oracle里面的函数, 不过和oracle中NVL的作用类似, 即用指定的值替换NULL, 其用法为:

ISNULL(expr, repexpr),如果expr不为空则返回expr, 否则用repexpr 来代替expr。

SUBSTR用于返回给定字符串的一个子串, 其用法为:

SUBSTR(str, b,len), 其中str为待截取的字符串,b是截取开始的位置,len是截取长度

GROUP BY是为了进行分组统计查询, 用法是:

GROUP BY expr, 即查询的结果以expr来分组, expr可以有很多组,进行层次分组; 另外select列表除了分组函数的参数列不出现在GROUP BY的子句中, 其余的都要在GROUP BY中出现

HAVING是对GROUP BY分组结果进行进一步的过滤, HAVING子句只能应用在GROUP BY的子句后面,不能使用WHERE子句来代替HAVING子句,否则会引起异常。

2、什么是表空间?

答:

oracle的数据实际是存在于数据文件(data files)中, 而表空间是一个逻辑概念,实际上并不存在, 当一组data files组合在一起就成了表空间。 一个oracle数据库能够有一个或者多个表空间, 而一个表空间则对应着一个或者多个物理文件。表空间是oracle 数据库恢复的最小单位, 里面有许多数据库的实体, 比如说表, 视图, 索引, 聚簇,回退段和临时段等。

可以把oracle数据库看作一个实在房间,表空间可以看作这个房间的空间,是可以自由分配,在这空间里面可以堆放多个箱子(箱子可以看作数据库文件),箱子里面再装物件(物件看作表)。用户指定表空间也就是你希望把属于这个用户的表放在那个房间(表空间)里面。

表空间的作用能帮助DBA用户完成以下工作:

1.决定数据库实体的空间分配;

2.设置数据库用户的空间份额;

3.控制数据库部分数据的可用性;

4.分布数据于不同的设备之间以改善性能;

5.备份和恢复数据。

用户创建其数据库实体时其必须于给定的表空间中具有相应的权力,所以对一个用户来说,其要操纵一个ORACLE数据库中的数据,应该:

1.被授予关于一个或多个表空间中的RESOURCE特权;

2.被指定缺省表空间;

3.被分配指定表空间的存储空间使用份额;

4.被指定缺省临时段表空间,建立不同的表空间,设置最大的存储容量。

3、什么是同义词?

答:

Oracle数据库中提供了同义词管理的功能。同义词是数据库方案对象的一个别名,经常用于简化对象访问和提高对象访问的安全性。在使用同义词时,Oracle数据库将它翻译成对应方案对象的名字。与视图类似,同义词并不占用实际存储空间,只有在数据字典中保存了同义词的定义。在Oracle数据库中的大部分数据库对象,如表、视图、同义词、序列、存储过程、包等等,数据库管理员都可以根据实际情况为他们定义同义词。

Oracle同义词有两种类型,分别是公用Oracle同义词与私有Oracle同义词。

公用Oracle同义词:由一个特殊的用户组Public所拥有。顾名思义,数据库中所有的用户都可以使用公用同义词。公用同义词往往用来标示一些比较普通的数据库对象,这些对象往往大家都需要引用。

私有Oracle同义词:它是跟公用同义词所对应,他是由创建他的用户所有。当然,这个同义词的创建者,可以通过授权控制其他用户是否有权使用属于自己的私有同义词。

oracle小测试的更多相关文章

  1. python操作oracle小测试

    首先使用python操作数据库需要导入cx_Oracle包import cx_Oracle这个包需要单独下载,下载地址:https://pypi.python.org/pypi/cx_Oracle使用 ...

  2. Cad 二次开发关于SelectCrossingPolygon和SelectFence返回结果Status为error的小测试

    CAD2008的二次开发,有个很奇怪的现象,只要你选择的点集不在当前视图上SelectCrossingPolygon和SelectFence返回结果Status就会为error,所以要获取正确的结果, ...

  3. Win环境下Oracle小数据量数据库的物理备份

    Win环境下Oracle小数据量数据库的物理备份 环境:Windows + Oracle 单实例 数据量:小于20G 重点:需要规划好备份的路径,建议备份文件和数据库文件分别存在不同的存储上. 1.开 ...

  4. Oracle DG测试failover和后续恢复报告

    Oracle DG测试failover和后续恢复报告 一.概述 二.验证过程: 2.1 A库异常关闭 2.2 B库进行failover切换为新主库 2.3 要求C库成为新主库的备库 2.4 要求A库成 ...

  5. loadrunner 脚本开发-调用java jar文件远程操作Oracle数据库测试

    调用java jar文件远程操作Oracle数据库测试 by:授客 QQ:1033553122 测试环境 数据库:linux 下Oracle_11g_R2 Loadrunner:11 备注:想学ora ...

  6. Oracle 小技巧

    Oracle小技巧 ###add at 18-10-11 1  ed 在sqlplus当中 如果前一条语句输入有误的话 可以输入ed再回车.在进行编辑 输入ed后有弹窗,可以对之前的输入语句进行编辑 ...

  7. python 程序小测试

    python 程序小测试 对之前写的程序做简单的小测试 ... # -*- encoding:utf-8 -*- ''' 对所写程序做简单的测试 @author: bpf ''' def GameOv ...

  8. Oracle数据库测试和优化最佳实践: OTest介绍 (转)

    当前Oracle数据库最佳测试工具OTest *  Otest是用于Oracle数据库测试.优化.监控软件. *  Otest是免费提供给Oracle客户和广大DBA工程师使用的软件.由原厂技术专家王 ...

  9. PHP中使用PDO操作事务的一些小测试

    关于事务的问题,我们就不多解释了,以后在学习 MySQL 的相关内容时再深入的了解.今天我们主要是对 PDO 中操作事务的一些小测试,或许能发现一些比较好玩的内容. 在 MyISAM 上使用事务会怎么 ...

随机推荐

  1. 怎么使用Docker搭建PHP开发环境呢?

    在Docker流行之前,要搭建开发环境通常有两种选择:一种是使用wamp.xampp.mamp等集成开发环境安装包,另外一种就是使用普通虚拟机来安装linux服务器,然后通过下载一键安装包(如:lnm ...

  2. HDU 3487:Play with Chain(Splay)

    http://acm.hdu.edu.cn/showproblem.php?pid=3487 题意:有两种操作:1.Flip l r ,把 l 到 r 这段区间 reverse.2.Cut a b c ...

  3. ACM题目————A除以B

    本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数.你需要输出商数Q和余数R,使得A = B * Q + R成立. 输入格式: 输入在1行中依次给出A和B,中间以1空格分隔. 输出格 ...

  4. SQL Server 索引和表体系结构(二)

    转自:http://www.cnblogs.com/chenmh 非聚集索引 概述 对于非聚集索引,涉及的信息要比聚集索引更多一些,由于整个篇幅比较大涉及接下来的要写的“包含列的索引”,“索引碎片”等 ...

  5. andriod 新建 Activity_ Form (详细设置)

    参考: Starting Another Activity 去创建Activity New->Other->Android->Android Activity->BlankAc ...

  6. Check the difficulty of problems

    Check the difficulty of problems Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 5830 Acc ...

  7. 在opencv中实现中文输出

    http://pan.baidu.com/s/1hrQTWDe 已经成功 ; 来自为知笔记(Wiz)

  8. 【转】写一个标准宏MIN,这个宏输入两个参数并返回较小的那个。另外当写下least=MIN(*p++,b)时会发生什么

    解答:#define MIN(A,B) ((A) <= (B) ? (A) : (B)) MIN(*p++, b)会产生宏副作用 剖析:这个面试题主要考察宏定义可以实现函数的功能.但是它终归不是 ...

  9. 对于数据包的截取,使用linux中的netfilter钩子函数

    http://blog.csdn.net/wswifth/article/details/5115358 在师哥的代码(packet.c)中使用的是Linux2.4内核中的一个子系统:netfilte ...

  10. WAMP,BITNAMI上建立多个虚拟主机都访问到主站上去了怎么解决?

    新建立了多个虚拟主机,访问的结果都是localhost,只要把localhost也建立成一个虚拟主机所有的虚拟主机访问就正常了.