oracle小测试
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小测试的更多相关文章
- python操作oracle小测试
首先使用python操作数据库需要导入cx_Oracle包import cx_Oracle这个包需要单独下载,下载地址:https://pypi.python.org/pypi/cx_Oracle使用 ...
- Cad 二次开发关于SelectCrossingPolygon和SelectFence返回结果Status为error的小测试
CAD2008的二次开发,有个很奇怪的现象,只要你选择的点集不在当前视图上SelectCrossingPolygon和SelectFence返回结果Status就会为error,所以要获取正确的结果, ...
- Win环境下Oracle小数据量数据库的物理备份
Win环境下Oracle小数据量数据库的物理备份 环境:Windows + Oracle 单实例 数据量:小于20G 重点:需要规划好备份的路径,建议备份文件和数据库文件分别存在不同的存储上. 1.开 ...
- Oracle DG测试failover和后续恢复报告
Oracle DG测试failover和后续恢复报告 一.概述 二.验证过程: 2.1 A库异常关闭 2.2 B库进行failover切换为新主库 2.3 要求C库成为新主库的备库 2.4 要求A库成 ...
- loadrunner 脚本开发-调用java jar文件远程操作Oracle数据库测试
调用java jar文件远程操作Oracle数据库测试 by:授客 QQ:1033553122 测试环境 数据库:linux 下Oracle_11g_R2 Loadrunner:11 备注:想学ora ...
- Oracle 小技巧
Oracle小技巧 ###add at 18-10-11 1 ed 在sqlplus当中 如果前一条语句输入有误的话 可以输入ed再回车.在进行编辑 输入ed后有弹窗,可以对之前的输入语句进行编辑 ...
- python 程序小测试
python 程序小测试 对之前写的程序做简单的小测试 ... # -*- encoding:utf-8 -*- ''' 对所写程序做简单的测试 @author: bpf ''' def GameOv ...
- Oracle数据库测试和优化最佳实践: OTest介绍 (转)
当前Oracle数据库最佳测试工具OTest * Otest是用于Oracle数据库测试.优化.监控软件. * Otest是免费提供给Oracle客户和广大DBA工程师使用的软件.由原厂技术专家王 ...
- PHP中使用PDO操作事务的一些小测试
关于事务的问题,我们就不多解释了,以后在学习 MySQL 的相关内容时再深入的了解.今天我们主要是对 PDO 中操作事务的一些小测试,或许能发现一些比较好玩的内容. 在 MyISAM 上使用事务会怎么 ...
随机推荐
- 怎么使用Docker搭建PHP开发环境呢?
在Docker流行之前,要搭建开发环境通常有两种选择:一种是使用wamp.xampp.mamp等集成开发环境安装包,另外一种就是使用普通虚拟机来安装linux服务器,然后通过下载一键安装包(如:lnm ...
- 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 ...
- ACM题目————A除以B
本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数.你需要输出商数Q和余数R,使得A = B * Q + R成立. 输入格式: 输入在1行中依次给出A和B,中间以1空格分隔. 输出格 ...
- SQL Server 索引和表体系结构(二)
转自:http://www.cnblogs.com/chenmh 非聚集索引 概述 对于非聚集索引,涉及的信息要比聚集索引更多一些,由于整个篇幅比较大涉及接下来的要写的“包含列的索引”,“索引碎片”等 ...
- andriod 新建 Activity_ Form (详细设置)
参考: Starting Another Activity 去创建Activity New->Other->Android->Android Activity->BlankAc ...
- Check the difficulty of problems
Check the difficulty of problems Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 5830 Acc ...
- 在opencv中实现中文输出
http://pan.baidu.com/s/1hrQTWDe 已经成功 ; 来自为知笔记(Wiz)
- 【转】写一个标准宏MIN,这个宏输入两个参数并返回较小的那个。另外当写下least=MIN(*p++,b)时会发生什么
解答:#define MIN(A,B) ((A) <= (B) ? (A) : (B)) MIN(*p++, b)会产生宏副作用 剖析:这个面试题主要考察宏定义可以实现函数的功能.但是它终归不是 ...
- 对于数据包的截取,使用linux中的netfilter钩子函数
http://blog.csdn.net/wswifth/article/details/5115358 在师哥的代码(packet.c)中使用的是Linux2.4内核中的一个子系统:netfilte ...
- WAMP,BITNAMI上建立多个虚拟主机都访问到主站上去了怎么解决?
新建立了多个虚拟主机,访问的结果都是localhost,只要把localhost也建立成一个虚拟主机所有的虚拟主机访问就正常了.