自己没记不住的,超基础Oracle知识,新手可以看一下。

大多数例子是用scott用户中的emp表完成

排序:order by 列名    desc是降序,默认是升序;

update 表名 set 列名=‘’;

insert into 表名(列名[列名写全或者不写全]) values(要与列名对应);

模糊查询:like“%S%” 含有S ,like“s%”是以S开头的,like“S_”以S开头只有两字母的;

alter table 表名 add constraint 键名(列名)

       若是外键     键名(列名)reference 表名(列);

alter table 表名 drop column 列名;

序列,常用于插入操作,可以自己增长,在mysql以及sqlserver中可以设置自增长,在Oracle中常用序列

create sequence 序列名

start with 1       从1开始

increment by 1   每次增长1

minvalue 1         最小值是1

nomaxvalue        没有最大值

cache 10(这里的cahe是指缓存10个数);

涉及到日期转换

select to_char(sysdate,“yyyy-mm-dd hh24:mi:ss”)from dual;

查询部门20中在1981年1月1日之后入职的员工:

select ename from emp where deptno=20 and hiredate > to_date(‘19810101’,‘yyyymmdd’);

分组

select avg(sal) from  emp表名 grop by deptno列名

选出各个部门,各个职位的平均工资

select deptno,job avg(sal)

from emp

group by deptno,job

order by deptno;

group by/having/order by以及where的使用顺序为

where》group by》having》order by

多表连接查询

查询和部门10中工作相同的雇员的名字

先查询部门10中的工作     select distinct【这个用于去重】 job from emp where deptno=10;

则完整句子是  select ename,job from emp where job in【这里指在后面的范围之内】( select distinct【这个用于去重】 job from emp where deptno=10)and deptno<>10;

into关键字

select ename,job,into sname,sjob from emp where empno=7396;

三种循环:

①loop                              ②while i<=100 loop                    ③for i in reverse 1......100 loop

if i>100 then exit;              s:=s+i;                                       s:=s+i;

end if;                               i:=i+1;                                        end loop;

s:= s+i;                           end loop;

i:=i+1;

end loop;

执行动态sql语句

daclare

strsql varchar2(100);

begin

strsql:=‘create table ttt(a mumber)’;

excute immediate(strsql);

end;

游标

declare

cursor【游标关键字】 c1 is select empno ,ename,job from emp;

begin

open c1;

fetch c1 into emp.empno,emp.ename,emp.job;

while c1%found loop

dbms_output.put_line();

fetch c1 into emp.empno,emp.ename,emp.job;

end loop;

close c1;

end;

触发器

表级触发器不管一次插入几行都只执行一次,行级触发器是插入一行就执行一次

create or replace trigger tri1

before update

on emp

for each row     这句话如果存在就是行级触发器,如果不存在就是表级触发器

begin

dbms_output.put_line(‘’);

若想让其终止运作,在这里抛出异常 raised ——————————————-;

end;

关于old:new

insert:没有old,有new

update:有old,有new

delete:没有old,没有new

结束!。。。。

Oracle复习(复习精简版v1.0)的更多相关文章

  1. MySQL与MariaDB核心特性比较详细版v1.0(覆盖mysql 8.0/mariadb 10.3,包括优化、功能及维护)

    注:本文严禁任何形式的转载,原文使用word编写,为了大家阅读方便,提供pdf版下载. MySQL与MariaDB主要特性比较详细版v1.0(不含HA).pdf 链接:https://pan.baid ...

  2. J20航模遥控器开源项目系列教程(一)制作教程 | 基础版V1.0发布,从0到1

    我们的开源宗旨:自由 协调 开放 合作 共享 拥抱开源,丰富国内开源生态,开展多人运动,欢迎加入我们哈~ 和一群志同道合的人,做自己所热爱的事! 项目开源地址:https://github.com/C ...

  3. [原创] RestartPC64-中文版v1.0.0.9

    原来发布的RestartPC-中文版和英文版v1.0.0.5,在PE64下无效.所以重新编译了64位版的RestartPC64-中文版v1.0.0.9,可以在PE64下面.正常Win64系统下面重启关 ...

  4. WPF 自定义 MessageBox (相对完善版 v1.0.0.6)

    基于WPF的自定义 MessageBox. 众所周知WPF界面美观.大多数WPF元素都可以简单的修改其样式,从而达到程序的风格统一.可是当你不得不弹出一个消息框通知用户消息时(虽然很不建议在程序中频繁 ...

  5. QQ音乐官方定制精简版v1.3.6 纯净无广告

    介绍 近期腾讯推出了QQ音乐简洁版.顾名思义,QQ音乐简洁版就是官方精简后的版本,没有内置任何广告.完全专注于听歌,不存在直播.K歌.短视频等花里胡哨的内容.如有违规,请删删.. 结尾附pc端 QQ音 ...

  6. 网盘直链工具 winform版 V1.0

    软件需要.net2.0支持 win7及以上版本用户无需安装 xp用户需要安装 支持网盘:好盘 坚果云 百度云 乐视云 华为网盘 微云 新浪网盘 126disk 速度盘 乐齐盘 天空网盘 千脑网盘 可乐 ...

  7. 保卫萝卜官方PC版——含绿色版 V1.0.6Beta

    官方网站 | 安装版 | 绿色版

  8. 免费了 -- EXCEL插件 智表ZCELL 普及版V1.0 发布了!!!

    智表(zcell)是一款浏览器仿excel表格jquery插件.智表可以为你提供excel般的智能体验,支持双击编辑.设置公式.设置显示小数精度.下拉框.自定义单元格.复制粘贴.不连续选定.合并单元格 ...

  9. Oracle Client 10g (instantclient) 精简版安装

    今天遇到个软件要求安装oracle client端,于是考虑装精简版本的,就从http://www.oracle.com/technology/software/tech/oci/instantcli ...

随机推荐

  1. 计算机网络-应用层(5)P2P应用

    P2P系统的索引:信息到节点位置(IP地址+端口号)的映射 在文件共享(如电驴中):利用索引动态跟踪节点所共享的文件的位置.节点需要告诉索引它拥有哪些文件.节点搜索索引从而获知能够得到哪些文件 在即时 ...

  2. Swift Expressible literal

    Swift Expressible Literal 引子 从一个面试题说起.有如下代码: struct Book { let name: String } let book: Book = " ...

  3. Oracle数据库教程-数据定义语言(表操作)

    创建表 建表语法: CREATE TABLE 表名 ( 列1 数据类型 [primary key], 列2 数据类型 default 默认值 [not null], …, constraint 约束名 ...

  4. PCIe例程理解(一)用户逻辑模块(接收)仿真分析

    前言 本文从例子程序细节上(语法层面)去理解PCIe对于事物层数据的接收及解析. 参考数据手册:PG054: 例子程序有Vivado生成: 为什么将这个内容写出来? 通过写博客,可以检验自己理解了这个 ...

  5. Python协程之asyncio

    asyncio 是 Python 中的异步IO库,用来编写并发协程,适用于IO阻塞且需要大量并发的场景,例如爬虫.文件读写. asyncio 在 Python3.4 被引入,经过几个版本的迭代,特性. ...

  6. php高效读取和写入

    /** * 删除非空目录里面所有文件和子目录 * @param string $dir * @return boolean */ function fn_rmdir($dir) { //先删除目录下的 ...

  7. Labview学习之路(十三)数组函数

    本文章介绍一下函数选版中的数组函数,一眼看懂没什么特殊地方的就不说了 (一)数组大小 返回I32类型的数或者数组. 什么是I32类型?就是32位有符号整型, 有符号什么意思?就是在32位数据中最高做符 ...

  8. Android开发之AlertDialog警告提示框删除与取消 详解代码

    package cc.jiusansec.www; import android.app.Activity; import android.app.AlertDialog; import androi ...

  9. FZU - 2037 -Maximum Value Problem(规律题)

    Let’s start with a very classical problem. Given an array a[1…n] of positive numbers, if the value o ...

  10. Nginx 前端项目配置 包含二级目录和接口代理

    Nginx是目前用的比较多的一个前端服务器 其优点是配置简单修改一下server就能用 并发性能比较好,具体怎么好就看这个吧 开撸 1.找到nginx (liunx系统,已安装) whereis ng ...