Orecle
1.什么是orecle及体系结构?
* 全局数据库,指物理磁盘数据库,一个真实存在的磁盘目录.
*用户: 用户在oracle里面是用来隔离数据的
*表空间: 逻辑结构,不可视的,虚拟的,用户的数据存在表空间上
*数据结构: 存放数据的文件,物理结构,真实存在的磁盘文件
一个数据库下可以建立N表空间,一个表空间可以建立N个用户,一个用户可以建立N个表!!
2.oracle的sql语句命令分类
(1).DDL: 数据定义语言,create创建/drop销毁
(2).DCL:数据库控制语言,grant授权/revoke撤销
(3).DML:数据库操纵语言,insert/update/delet等..
(4).DQL: 数据查询,select等..
3.创建表空间
创建语法:
create tablespace 表空间的名字
datafile '磁盘数据文件地址' size 数据文件大小
autoextend on next 自动增长的大小
注意:磁盘数据文件要写虚拟机的地址!
4.用户
4.1 创建用户
语法:
create user 用户名 identified by 密码
default tablespace 表空间名字
4.2 用户授权
DBA角色: 拥有全部权限,是系统最高权限.
授予权限语法:
格式一: grant 权限一 , 权限二, to 用户
格式二 : grant 角色 to 用户 (推荐使用)
注意: 授权必须在system 用户下,否者无法正常登陆
5.Oracle数据类型
(1).varchar2: 字符串类型,
(2). number :整数类型,有效范围1~38
(3).date: 日期类
(4).long : 小数型
(5).CLOB : 大对象,表示大文本数据类型,可存4G
(6).DLOB: 大对象,表示二进制数据,可存4G,适合储存视频/文档等数据
6.表的管理
6.1 建表
语法:
create table 表名(
字段1 数据类型 [default默认值]
字段1 数据类型 [default默认值]
.........
);
6.2 表删除
语法:
(1).完全销毁表
drop table 表的名字
(2).删除表里全部数据
delete from 表名字
6.3 表修改
添加语法: alter table 表名称 add(列名字 类型 [ default 默认值 ].......);
修改语法:alter table 表名称 modify(列名字 类型 [default 默认值].....);
修改列名: alter table 表名称 rename column 旧列名 to 新列名;
6.3.1 数据库表数据的更新
语法:
语法一: insert into 表名 [(列名 1, 列名2,...)] values(值1,值2,....);
语法二: insert into 表名字 values(值1,值2.....)
6.3.2 序列
介绍: oracle中自增长的功能
语法:
CREATE SEQUENCE 序列名
[INCREMENT BY n] [START WITH n]
[{MAXVALUE/ MINVALUE n|NOMAXVALUE}] [{CYCLE|NOCYCLE}]
[{CACHE n|NOCACHE}];

例子:
create sequence seqpersonid
maxvalue 9999999999999999999999999999
start with 1
increment by 1
cache 5
cycle;
nextval :取得序列的下一个内容
currval :取得序列的当前内容
insert into person values(seqpersonid.nextval,'李四 ',1,to_date('2018-8-18','yyyy-MM-dd'),'广州');
6.3.3 update(修改)
语法:
全局修改: update 表名 set 列名 1 =值1,列名 2 =值2........
局部修改(带条件) : update 表名 set 列名 1 = 值 1 ,列名 2= 值2,...where 修改条件
7.单行函数
7.1 字符函数
*把小写的字符转换成大写的字符
select upper('abc') from dual;
*把大写字符变成小写字符
select lower('ABC') from dual;
*字符串替换函数
select replace('abc hello world','hello','world') from dual;
7.2 数值函数
*四舍五入函数,round(数字,n),n代表保留数字的几位小数,n不写保留整数
select round(123.456) from dual 结果: --123
select round(123.456,2) from dual 结果: --123.46
7.3 日期函数
*关键字:sysdate,获取系统当前时间
select sysdate from dual;
公式:
日期+数字=日期,数字单位是天
日期-数字=日期,数字单位是天
日期-日期=数字,单位是天
7.4 转换函数
*时间格式:fmyyyy-MM-dd HH:mi:ss
*yyyy/YYYY,年
*mm/MM,月
*DD/dd,日
*hh/HH,代表12小时制
*hh24/HH24,代表24小时制
*mi,分钟
*ss,秒
*fm,去掉补0数字
*TO_CHAR:日期转换字符串函数
select to_char(hiredate,'fmyyyy-MM-dd hh24:mi:ss') from emp;
* TO_DATE:字符串转日期函数
select to_date('2018-01-01','yyyy-mm-dd hh24:mi:ss') from dual;
7.5 通用函数
* 空值处理nvl
语法:nvl(字段 , 当前字段为空null返回的值)
* Decode 函数,用于条件判断(可以用于将职位转换为中午)
语法:decode(字段,'aa','当字段值为aa时返回的值','bb','当字段值为bb时返回的值',...,'以上都不符合返回的值')
* case when,用于调节判断
语法:case 字段
when 值1 then 当字段值为值1时返回的值
when 值2 then 当字段值为值2时返回的值
...
else 以上都不符合返回的值
end
8.多行函数
8.1 查询总记录数(可带条件)
语法: select count(*) from 表名字;
8.2 查询最低值(可带条件)
语法: select min(字段名字) from 表名字;
8.3 查询最大值
语法:select max(字段名字) from 表名字;
8.4 查询平均值
语法:select avg(字段名字) from 表名字;
8.5 查询总和/求和
语法:select sum(字段名字) from 表名字 where 条件;
9.分组统计
语法:
SELECT * |列名 FROM 表名 {WEHRE 查询条件} {GROUP BY 分组字段} ORDER BY 列名 1 ASC|DESC,列名 2...ASC|DESC

最新文章

  1. easyui关于validatebox实现多重规则验证的实践
  2. java类生命周期详细解析
  3. 转:CWnd的函数,以后可以在这儿找了!
  4. lenovo X230热键功能
  5. 关于AIR新浪登录测试
  6. CSS3 Animation 基于 less 构建的 css3 动画库
  7. 【转载】应读者强烈要求给出《超容易的Linux系统管理入门书》一书的主要知识点
  8. ACM2037
  9. ubuntu 下编译内核
  10. 机器人操作系统 除了Android还有一个ROS(转)
  11. Linux 下如何安装 JDK ,以 Ubuntu 为例。
  12. 201521123122 《java程序设计》第十周学习总结
  13. hibernate框架学习笔记9:多对多关系案例
  14. 写一函数,用来求表达式1+2+3+.....+n的值,并编写主函数
  15. idea设置JVM运行参数
  16. PeopleSoft 单点登录
  17. Django电商项目---完成商品主页显示day2
  18. Type cvc-complex-type.2.4.a: Invalid content was found starting with element 'build'.错误的解决方法
  19. AsyncTask 异步任务基本使用-下载视频
  20. 大数据:Windows下配置flink的Stream

热门文章

  1. Seaborn数据可视化入门
  2. Invalid bound statement(not found):cn.e3mall.mapper.TbItemMapper.selectByExample.....
  3. Container容器crontab错误问题
  4. Redis常用命令(Set、Hash、Zset)
  5. VS中一些提高编码效率的快捷键
  6. SpringBoot的一个小彩蛋
  7. SpringBoot起飞系列-配置文件(三)
  8. selenium自动化测试-浏览器基本操作
  9. Spring boot 梳理 - 在bean中使用命令行参数-自动装配ApplicationArguments
  10. Eureka实战-2【构建Multi Zone Eureka Server】