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. Javascript Window Location

    window.location 对象在编写时可不使用 window 这个前缀. URL : 统一资源定位符 (Uniform Resource Locator) 说明: 完整的URL示例:scheme ...

  2. JavaEE基础(四)

    1.Java语言基础(循环结构概述和for语句的格式及其使用) A:循环结构的分类 for,while,do...while B:循环结构for语句的格式: for(初始化表达式;条件表达式;循环后的 ...

  3. vsftpd

    vi /etc/vsftpd.conf and add the following allow_writeable_chroot=YES sudo service vsftpd restart

  4. 使用mysqlbinlog server远程备份binlog的脚本

    #注意,备份机到远程mysql服务器需要免密钥登录,此脚本放到计划任务中每五分钟执行一次,避免mysqlbinlog server进程长时间挂掉无人知晓   cat backup_binlog.sh ...

  5. 如何在plSql查询数据查出的数据可编辑

    最近开发项目时要经常自己造数据,遇到好多查询出数据时要进行修改.上网查询资料 总结如下: plSql允许查询数据可以编辑的条件是必须查询出rowid 在某个表上点击query data 出现的sql语 ...

  6. Integer Inquiry -TJU1112

    作为最简单的高精度加法,要注意的是如下几点, 第一,因为是数位达到上百位的大数,所以只能用字符串数组来存贮. 第二,为了方便之后的相加操作,应该把字符串数组逆序转化为一个整型数组. 第三,在控制进位的 ...

  7. WIN7 64位系统注册银行支付组件

    WIN7 64位系统注册银行支付组件目前只尝试注册了银联的chinapay.dll和工行的icbcebankutil.dll 1.将dll文件拷贝到windows\syswow64\文件夹下(Win7 ...

  8. miniUI 可编辑datagrid获取值的问题

    <div id="variableGrid" class="mini-datagrid" borderStyle="border-right:0 ...

  9. java 四舍五入 保留俩位小数

    public static void main(String[] args) {              String str="0";              BigDeci ...

  10. Djnago的一些零碎知识点

    1.TEMPLATE_DIRS relative to the project folder http://stackoverflow.com/questions/9856683/using-pyth ...