浅谈Oracle/Mysql知识点

浅谈Oracle/Mysql知识点

欢迎评论增加知识点,学习是积累的过程

  • Where和having区别

    Where修饰数据源,having修饰分组之后的数据groupby以后的

  • Union nuionall 区别

    Union是联合自动去除重复项,unionall是全联合可以重复

  • 事物是什么

    要不就全部成功,要不就全部失败,为了保持数据一致性,事
    物处理语言TCL,使DML操作生效,使用提交(COMMIT)命令实现,
    使DML操作失效,使用回滚(ROLLBACK)命令实现

  • DDL,DML和DCL的区别与理解

    DDL: 命令有CREATE、ALTER、DROP等,DDL主要是用在定义或改变表(TABLE)的结构,数据类型,多用于建表时使用
    DML: 它们是SELECT、UPDATE、INSERT、DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言
    DCL: 是数据库控制功能。是用来设置或更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)语句。需要sys等有权限的用户进行使用。

  • 事物特征:ACID*

    原子性:DML操作语句要么全成功,要么全失败,
    一致性:一旦事务完成,整个系统处于数据一致的状态。
    隔离性:一个事务的执行不会被另一个事务所干扰。如两个人同时从一个账户从取钱,通过事务的隔离性确保账户余额的正确性。
    持久性:永久性,指事务一旦提交,对数据的改变就是永久的,不可以再被回滚。

  • 隐式结束事物

    Commit:
    DDL:create,alter,drop,truncate,rename
    DCL:grant授权,revoke收回权限
    退出时:exit,quit
    Rollback:
    强行退出,异常中断

  • 设置还原点

    SAVEPOINT savepointname;ROLLBACK TO savepointname;

  • 锁用在多用户并发访问数据库,为了保持数据的一致性,当前用户事物没有提交或者回滚时别的用户无法对数据进行操作。锁是自动加的。查询语句不会锁定,但是查询后加for update就会锁定。Alter user unlock解锁语句

  • 修改已存在的列

    可以修改列名,数据类型,长度,默认值,但是修改数据类型的时候已有的数据必须清空,varchar(10) 变成20可以改变不需要删除数据

  • truncate和delete

    Truncate是ddl语句,无法回滚,删除数据,释放内存空间
    Delete是dml语句,可以回滚

  • 什么是视图

    视图就是查询的结果保存成另外一个虚拟的表,对视图进行修改时,原表也会被修改,分为简单视图和复杂视图,差别在dml操作上,复杂视图有函数,不出现group函数,distinct关键字,你可以向视图中插入数据create or replace 重建已经有的视图 ,drop删除视图不会删除数据,delete会

  • 啥时候创建索引(B-tree构建)

    表数据量很大 ,要查询的结果集在2%-4%左右 ,经常用来做WHERE条件中的列或者多表连接的列 ,查询列的数据范围分布很广 ,查询列中包含大量的NULL值,因为空值不包含在索引中 ,但是不适合经常修改数据的,降低DML操作速度(aov)

  • b-tree 多路搜索树

    所有节点 阶数/2-1<=数目<=阶数-1

  • 查询怎么进行模糊查询

    Like关键字 还有通配符%/

  • 空值怎么处理

    Nvl(comm,0), trim去掉不小心输入的空格,java中null判断比较多

  • 非等值连接

    <>、>、<、>=、<=、LIKE、IN、BETWEEN…AND。

  • 列名重复

    如果有需要的话就把其中一个取列别名

  • 连接方式

    笛卡尔积,等值连接,非等值连接,外部链接,自身连接,交叉,自然,左外右外,全外连接。

  • group by进行限制

    Having

  • 执行顺序以及书写顺序不一样

    执行:from where group by having Select orderby
    书写:Select from where group by having orderby

  • 进行分页查询

    使用rownum,外层循环,内层写查询语句,where限制页数,mysql使用limit

  • 集合运算

    联合运算:union 相交部分就一份 等于下边的disitinct
    完全联合运算:union all 相交部分是两份
    相交运算:intersect
    相减运算:minus

  • 相关子查询

    from语句中 的查询语句变成 where里边的运算符后边的语句,父类的查询放入子类查询之中。

  • 树状结构怎么查询,

    层次查询,制作页面的树状结构

  • delete truncate drop区别

    Delete是dml语句,可以rollback
    drop table 删除表,结构也消失,可以还原数据得有缓存区
    truncate table emp_haha 删除表数据,结构不消失 !!!!不能还原数据

  • 五种约束

    notnull:非空约束
    unique:唯一性约束
    primarykey:主键约束,第一不能为空第二唯一第三主键只有一个,
    check:检查性约束,制定一个必须满足的条件
    foreignkey:外键约束,主键才有可能成为外键,比如deptno,对俩表有约束

  • 怎么理解视图,索引,序列,同义词

    视图:是一个命名的查询,改变基表数据的显示,修改了视图,基表也会改变,除非是有函数修饰。
    索引:构建于表单字段上,加速对表中数据的查询
    序列:实现自增的语句,产生顺序不重复的字串
    同义词:数据库对象的别名

  • normal sysdba sysoper 有什么区别

    Normal:普通用户
    Sysdba:登陆后为sys,拥有最高的系统权限
    Sysoper:主要是用来启动,关闭数据库的,登陆用户为public

  • mysql主键自增语句

    使用主键自增,auto_increment

  • mysql和oracle的分页

    Mysql用limit m n,oracle用rownum

猜你喜欢

转载自blog.csdn.net/ZhouhbUp/article/details/82753420