023-20180123-【数据库学习】建立索引、nvl 函数、update函数

O

        今天导师以日账开发的程序作为模板,给我这周布置了一个新的任务。今天主要进行需求分析与框架的搭建。在这个过程中,我遇到了几个问题,分别是建立索引、nvl 函数以及update函数,所以这篇ORID主要用于总结这几个知识点。

R

        今天除了几个小问题,在同事的帮助下还是基本能将程序的框架搭出来,虽然有一点点累,但是还是觉得很有意义。

I

        这几个知识点的介绍及具体使用方法如下:

        1.建立索引create index

        create index即在数据表中建立索引,利用索引可以在不查询整个表的情况下,快速地获取数据。其具体语法如下:

        CREATE [ UNIQUE ] INDEX index_name ON table_name (column_name)

        其中column_name表示需要添加索引的列。 [UNIQUE]为可选项,表示建立的是唯一索引,即建立索引的列上不能有相同的索引值。一个索引字段可以是一个使用表的行的一个或多个字段的数值进行计算的表达式。 

        2.nvl 函数

        该函数的语法及具体说明如下:

        NVL(expr1,expr2)

        在Oracle中,该函数的参数解释为,如果expr1为NULL,则NVL函数返回expr2的值,否则返回原来的值。并且expr1和expr2必须为同一数据类型。NVL的作用与SQLserver 中的 ISNULL( expr1,expr2) 一样。该函数可以用于将空值定义为特定的值,方便程序的调用与显示。例如,nvl(cost,0) ,表示cost为空时,返回0。

        但是该函数只能处理空值的情况,具有一定的局限性,因此引申了nvl2函数,即

        NVL2(expr1,expr2,expr3)

        如果expr1为NULL,则函数返回expr3,若expr1不为NULL,则返回expr2。参数可以返回任何数据类型的值,但是 expr2 和 expr3 不能是 LONG 型的数据类型。通过这种方式,不管expr1是否为空,都可以使其返回特定值。

        3.update函数

        该函数的语法及具体说明如下:

        UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

        该函数主要用来更新数据表的内容。其中,更新的数据必须满足约束条件,新的值必须 与数据列类型匹配,且update后要进行commit命令,更新操作才会生效。update多个字段的语法如下: 

        update 表1名称 set (列名称1,列名称2,列名称3) =(select 值1,值2,值3 from 表2名称 where 条件) where 条件

        在两种情况下UPDATE不会改变原数据:1. 当WHERE中的条件在表中无匹配项;2. 更新的值与原值相同当。

D

        继续每天学习数据库编程,记录学习的重难点问题,并寻求解答。

你可能感兴趣的:(023-20180123-【数据库学习】建立索引、nvl 函数、update函数)