暑假第三周计划

在本周主要学习了一些Oracle相关的命令,发现其与MySQL有很大的相似性,由于是跟着视频教学,所以主要学习了一些关于Oracle命令行的操作,其中的总结如下:

在命令行的一些命令:

  1. 清屏:host cls;  windows操作系统
  2. 显示当前用户:show user;
  3. 显示当前用户下的表:select * from tab;(显示所有表和视图)
  4. 显示某一确定的表结构:desc +表名称
  5. 显示行的宽度:show linesize;
  6. 设置行的宽度:set linesize +长度(其中的长度为字节的长度)
  7. 也可以设置特定列的宽度:例如:col ename for a8(意思是设置ename这一列的宽度为8个字符)
  8. /表示执行上一条sql语句
  9. Sql语句中的null问题

(1)包含空值的的表达式都为空值

(2)Null永远!=null

(3)如果集合中含有null,就不能使用not in,但是可以使用in

  1. 函数:nvl(a,b)如果a为空值,则转化为b的值,否则返回a本身的值。
  2. ed 进入系统默认的文本编译器,可以编辑上一条sql语句
  3. 当数据库的表的查询的列用别名时,如果别名中含有关键字或者特殊字符,就必须将别名用“”括起来
  4. --用来注释一行语句的,/*用来注释 块
  5. Distinct作用于后边所有的列
  6. Dual表是在写Oracle的sql语句时,如果查询的不是某个表的内容,就  from dual (在Oracle数据库中的select语句必须由from关键字),伪表
  7. Oracle数据库中连接列名用||,可以用来连接列名
  8. 日期和字符只能放在单引号里边,双引号里边放上列的别名
  9. 在用select语句查询时,如果模糊查询中包含下划线,应该用转义字符给他转移,取他真正的含义
  10. Oracle自动开启事务
  11. Oracle sql语句中的where条件的解析顺序是从右往左
  12. Order by 作用于后边所有的列,desc作用于 离他最近的列
  13. 在查询时按照降序排列,但是数据中含有空值时,空值的列会在最上边,原因是在Oracle数据库中null最大,如果排序时想要空值函数排在最后,可以在sql语句后边加上 nulls last (如果空值不唯一,也就是有好多个话,就需要用nulls)
  14. 函数instr的作用是查询字串,返回首字母的下标
  15. Lengthb指的是字节数
  16. lpad 函数指的是左填充,rpad指的是右填充
  17. trim 去掉指定的字符串 例如 select trim (‘H’from ‘Hello worldH’) from  dual (dual 指的是一个表名)
  18. 四舍五入函数:round函数接收的参数为两个,一个是四舍五入的值,一个保留的小数
  19. trunc截断函数,不进行四舍五入,直接进行截断(也是日期函数书)
  20. Oracle中只有date数据类型,里边包含年月日小时分钟秒
  21. to_char函数,将当前事件转化为指定的格式,在命令行显示当前时间的sql语句是 select sysdate from dual;(dual是一个表名)
  22. 日期的数学运算只有加减,没有乘除,以天为单位
  23. 两个日期之间是不能相加的
  24. Next_day某一指定日期的下一个日期,应用:每星期一备份一下数据库
  25. nullif通用函数nullif(a,b)当a和b相等时,返回的是null,当a,b不等时返回的是a的值
  26. nvl2(a,b,c)当a的值不为空时返回的是b的值,当a的值为空时返回的是c的值
  27. coalesce从左往右找到第一个不为空的值
  28. 组函数自动滤空,我们可以利用空值函数来屏蔽他的滤空函数nvl()函数
  29. Group by 的增强版  group by rollup(a,b)功能相当于

group by a,b+

Group by a+

Group by null;

作用是可以用来做公司的报表

  1. 批处理,在insert中的values中不用写,直接嵌套一个子查询语句,就可以一次插入多条数据
  2. 当我们需要海量拷贝数据时的办法

(1)数据泵

(2)Sql*loader(自己安装的Oracle自带的)

(3)数据仓库,用外部表的方式

(4)可传输的表结构

  1. delete 和 truncate 语句的差别

(1)delete是逐条删除,而truncate是先摧毁表结构,再重新创建

(2)delete是DML语句,是可以回滚的,truncate是DDL语句,是不可以回滚的

(3)Delete不会释放表空间,

(4)可以用alert table<表明> move;

  1. Oracle数据库的导处和导入

Exp   imp

还有增强版:expdp  impdp

  1. 由于存在undo数据(还原数据),所以oracle中delete比truncate速度快,但是在mysql中,truncate速度更快
  2. 事务的标志:起始标志:事务忠中的第一条DML语句

                结束标志:提交:显示提交:commit

                                隐式提交:正常退出, DDL,DCL

                          回滚:显示回滚:rollback

                                隐式回滚:指的是系统不正常的退出

  1. plsql程序语句的规则:

程序以begin开始,以end结束,在程序开头可以有declare说明部分,也可以已没有

46.

 

在下周中,要学习一下web开发的三大框架,ssh

也是根据视频教学

原文地址:https://www.cnblogs.com/ljysy/p/9399420.html