温故而知新·Oracle《四》

using子句
    分组函数:分组函数(聚合)作用于一组数据,并对一组数据返回一个值。
        组函数类型:
    AVG:平均值
    COUNT:计数,查询函数
    MAX:最大值
    MIN:最小值
    SUM:和


    分组函数在使用时注意事项:
        1.AVG, SUM只能针对于数值型的记录,进行数据处理。
2.MAX, MIN能针对任意数值类型进行处理。MAX(MIN)对于字符串类型时,看的是首字母的顺序;处理日期型数据的话,返回大一点的年份。
3.COUNT(字段),COUNT(*):COUNT是忽略空的,即不合计空值,返回表中记录的总数,适用于任意数据类型


DML 数据处理:
    向表当中插入语句
    修改现存数据
    删除现存数据
    事务是有完成若干项工作的DML语句的组成


    INSERT 语句:插入
        全行信息插入:INSERT INTO 表名 VALUES(值.......);
部分行信息插入:INSERT INTO 表名(列,...) VALUES(值......)
注意事项:
    1.采用的是全行信息插入:要求所有字段的值必须加入;如果是部分信息插入插入的值和列名对应即可;如果插入的字段是字符串,严格要求必须是单引号'';
    2.如果我们想插入一个空值:部分行信息插入,插入空值的字段不加;显示的插入一个空值
        注意NULL与''的区别:NULL是没有,''是有,空值。     
    3.如果插入的是日期型数据,而且日期型数据是系统,sysdate;如果不是系统日期。to_date(字符串,格式)转换成日期数据。
    UPDATE 语句:修改
        UPDATE 表名 SET 字段名=修改的值...WHERE ....;
如果不加入条件的话,修改的是全部,修改多行数据。也可以加入子查询。
UPDATE emp SET Sal=Sal*1.1 WHERE empno=7369;
如果想修改多个字段的值,则每个字段之间用逗号隔开。
    DELETE 语句:删除记录:删除多条
        DELETE FROM 表名 WHERE 条件;
DELETE FROM emp WHERE Sal>(SELECT AVG(Sal) FROM emp)
删除中的数据完整性错误
You cannot delete a row that contains a primary key that is used as a foreign key in another table;
删除表的记录在另外一张表中没有被引用。




/*******************************************************************/
事务:一组逻辑操作单元,使数据从一种状态转变到另外一种状态
    数据库事务有以下的语句组成:
        一个或者多个DML语句
一个DCL(Data Definition Language数据定义语句)语句
一个DCL(Data Control Langauge数据控制语句)语句
    事务的特性:
        完整性:
    TCL:事务控制语言:
        COMMIT:提交:事务没有出现错误的情况,将之前所有的操作永久性保存在数据库。在没有进行提交的情况下,数据库的操作并不是真正意义的操作。
    1.COMMIT:手动提交
    2.DDL语句:默认的自动提交
    3.正常关闭:Oracle自动提交
    4.异常终止
ROLLBACK:回滚:一个事务在处理的过程中,如果其中的一个逻辑单元出现了问题,取消之前的操作。
    每次回滚只能到上一个提交点。
 
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页