Oracle简单命令

Oracle学习

一、数据库的历史

1.1 数据库的发展

人工管理阶段---------->文件系统阶段------------------>数据库系统阶段

数据库的核心:数据模型

数据库系统阶段发展:

一代数据库:层级网状数据库管理系统

二代数据库:关系数据库管理系统(RDBMS)

三代数据库:有待发展

1.2 数据库特点

1) 数据共享

2) 减少数据冗余度

3) 数据独立

4) 数据集中控制

5) 数据一致性和可维护性,确保数据安全可靠

  • 安全性控制:防止数据丢失、错误更新和越权使用
  • 完整性控制:确保数据正确性、有效性和相容性
  • 并发控制:同一时间周期内,允许数据实现多路存取,防止用户间不正常交互
  • 故障的发现和恢复

6) 故障恢复

1.3 数据库对象

  • 用户(user)
  • 表(table)
  • 视图(view)
  • 索引(index)
  • 触发器(trigger)
  • 存储过程(procedure)
  • 同义词(synonym)
  • 序列(sequence)

1.4 SQL(Structured Query Language)

  1. SQL(Structured Query Language),结构化查询语言,是专门操作关系型数据库的一种语言

  2. SQL语言属于第四代编程语言

3) SQL语句的分类:

  • DQL(数据查询语言),检索数据库数据,主要语句:SELETE
  • DML(数据操作语言),改变数据库数据,主要语句:INSERT,UPDATE,DELETE
  • DDL(数据定义语言),建立、修改、删除数据库对象,主要语句:CREATE,ALTER,DROP,TRUNCATE
  • TCL(事务控制语言),维护数据一致性,主要语句:COMMIT,ROLLBACK,SAVEPOINT
  • DCL(数据控制语言),权限授予和权限收回,主要语句:GRANT,REVOKE
  1. sql、sqlplus、pl/sql的区别:
  • sql,结构化的查询语句,操作关系型数据库的语言
  • sqlplus,oracle数据库软件自带工具,可以接收用户输入的sql语句,然后将sql执行结果显示出来
  • pl/sql,程序化的sql语句,在sql语句的基础上加入一定的逻辑操作,如 if for 等

二、对Oracle的操作

1.数据查询select

1.1 对所有列进行查询[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-57XefKpW-1644742193241)(H:\笔记\java笔记\Oracle学习.assets\image-20210426101032235.png)]

​ 如:SELECT * FROM departments;

1.2 对特定列进行查询

​ 如:SELECT dept_id FROM employees;

tip:
  • SQL语言大小写不敏感
  • SQL可以写一行或多行
  • 关键字不能缩写和分行
  • 子句一般分行和缩进,提高语句可读性

1.3 查询中加入算术运算符(+ - * /)

可对数字和日期使用

​ 提出需求:这个月比上个月多发300工资

SELECT last_name,salary+300

FROM employees;

​ 操作符优先级和数学运算符一致

​ 提出需求:年薪多发10000工资

SELECT last_name,salary*12+300

FROM employees;

​ 提出需求:每月补贴1000,计算一年薪资

SELECT last_name,(salary+1000)*12

FROM employees;

1.4 对表格中空值的理解
  • 空值是无效的,未指定的,未知的或不可预知的值
  • 空值不是空格或者0
  • 包含空值的数学表达式的值都为空值

如查询提成,没有提出为控制:

SELECT last_name,12*salary*commission_pct

FROM employees;

1.5 对别名的使用(关键字 AS)

​ 关键字as可写可不写,如:

SELECT last_name AS name,commission_pct comm

FROM employees;

(其中name和comm为别名)

tip:当别名是多个单词组成或指定了大小写时,应用双引号括起来(只有在此处出现双引号)

​ SELECT last_name AS “Name”,commission_pct “comm pct”

​ FROM employees;

1.6 连接符的使用(||)

​ 用于列的合并,把两列的字符连接在一起。如:

SELECT last_name||first_name FROM employees;

select last_name||’`s job_id is’||job_id details
from employees;

1.7 字符串的使用
  • 字符串可以是列表中的字符、数字、日期

  • 日期和字符只能在单引号中出现

  • 每返回一行时,字符串被输出一次

    如:

    SELECT last_name || ’ is a '||job_id

    AS “Employee Details”

    FROM employees;

1.8 行重复问题(distinct)

引子:

​ SELECT department_id FROM employees;

​ 多个员工同属一个部门,出现重复行

去重复行使用关键字distinct,如:

​ SELECT DISTINCT department_id

​ FROM employees;

错误例子:

​ SELECT last_name,D

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值