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

Orecle基本概述(1)的更多相关文章

  1. Orecle基本概述(2)

    1.视图1.1 视图介绍*一种虚拟的表,不是真实存在的表,以多种方式展示数据给用户看,1.2 视图使用*创建视图语法一(非只读): create or replace view 视图名字 as sql ...

  2. 【AR实验室】ARToolKit之概述篇

    0x00 - 前言 我从去年就开始对AR(Augmented Reality)技术比较关注,但是去年AR行业一直处于偶尔发声的状态,丝毫没有其"异姓同名"的兄弟VR(Virtual ...

  3. Recurrent Neural Network系列1--RNN(循环神经网络)概述

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...

  4. Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)

    本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...

  5. .Net 大型分布式基础服务架构横向演变概述

    一. 业务背景 构建具备高可用,高扩展性,高性能,能承载高并发,大流量的分布式电子商务平台,支持用户,订单,采购,物流,配送,财务等多个项目的协作,便于后续运营报表,分析,便于运维及监控. 二. 基础 ...

  6. [C#] 进阶 - LINQ 标准查询操作概述

    LINQ 标准查询操作概述 序 “标准查询运算符”是组成语言集成查询 (LINQ) 模式的方法.大多数这些方法都在序列上运行,其中的序列是一个对象,其类型实现了IEnumerable<T> ...

  7. 【基于WinForm+Access局域网共享数据库的项目总结】之篇一:WinForm开发总体概述与技术实现

    篇一:WinForm开发总体概述与技术实现 篇二:WinForm开发扇形图统计和Excel数据导出 篇三:Access远程连接数据库和窗体打包部署 [小记]:最近基于WinForm+Access数据库 ...

  8. Java消息队列--JMS概述

    1.什么是JMS JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送 ...

  9. [AlwaysOn Availability Groups]健康模型 Part 1——概述

    健康模型概述 在成功部署AG之后,跟踪和维护健康状况是很重要的. 1.AG健康模型概述 AG的健康模型是基于策略管理(Policy Based Management PBM)的.如果不熟悉这个特性,可 ...

随机推荐

  1. mysql之innodb存储引擎---BTREE索引实现

    在阅读本篇文章可能需要一些B树和B+树的基础 一.B树和B+树的区别 1.B树的键值不会出现多次,而B+树的键值一定会出现在叶子节点上,而且在非叶子节点也可能会重复出现2.B数存储真实数据,B+数叶子 ...

  2. Java 中初始化 List 集合的 7 种方式

    1.常规方式 List<String> languages = new ArrayList<>(); languages.add("Java"); lang ...

  3. hdu 1007 Quoit Design 题解

    原题地址 题目大意 查询平面内最近点对的距离,输出距离的一半. 暴力做法 枚举每一个点对的距离直接判断,时间复杂度是 $ O(n^2) $,对于这题来说会超时. 那么我们考虑去优化这一个过程,我们在求 ...

  4. Docker Compose部署项目到容器-基于Tomcat和mysql的商城项目(附源码和sql下载)

    场景 Docker-Compose简介与Ubuntu Server 上安装Compose: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/deta ...

  5. ansible-playbook流程控制-loops循环使用

    1. ansible-playbook流程控制-loops循环使用    有时你想要多次重复任务.在计算机编程中,这称为循环.common ansible循环包括使用文件模块更改多个文件和/或目录的所 ...

  6. 游戏设计模式——Unity对象池

    对象池这个名字听起来很玄乎,其实就是将一系列需要反复创建和销毁的对象存储在一个看不到的地方,下次用同样的东西时往这里取,类似于一个存放备用物质的仓库. 它的好处就是避免了反复实例化个体的运算,能减少大 ...

  7. 使用 Nginx 部署前后端分离项目,解决跨域问题

    前后端分离这个问题其实松哥和大家聊过很多了,上周松哥把自己的两个开源项目部署在服务器上以帮助大家可以快速在线预览(喜大普奔,两个开源的 Spring Boot + Vue 前后端分离项目可以在线体验了 ...

  8. Decorator:从原理到实践

    前言 原文链接:Nealyang/personalBlog ES6 已经不必在过多介绍,在 ES6 之前,装饰器可能并没有那么重要,因为你只需要加一层 wrapper 就好了,但是现在,由于语法糖 c ...

  9. 记一次 JavaScript 浮点型数字误差引发的问题

    需求 车间的工人在生产出来产品后,需要完成初步的自检,并通过手机上报.在实际生产中,用户(工人)不方便进行数值的输入,因而表单中的一些项设计成 picker 模式以供选取数值.数值的取值范围,根据允许 ...

  10. Matplotlib散点图、条形图、直方图-02

    对比常用统计图 折线图: 特点:能够显示数据的变化趋势,反映事物的变化情况.(变化) 直方图: 特点:绘制连续性的数据,展示一组或者多组数据的分布情况(统计) 条形图: 特点:绘制离散的数据,能够一眼 ...