oracle坚决不挂01(表,索引,视图的创建,修改,删除,查询)
考试快来了,来篇oracle干货,复习一下(挣扎一下)
废话不多说,开始写!
这篇是数据库对象的有关操作的总结!
数据库对象有熟悉的表,视图,索引,序列,同义词等(这个oracle东西真不少,小声bb!)
1. 创建表
- 创建学生表student(sno,sname,sex,sage),要求学号sno主键,姓名sname不能重复, 性别sex只能是‘男’或者‘女’,年龄sage在15到25之间。创建课程表course(cno,cname),要求课程号cno主键,课程名cname唯一,同时为主键约束列上的唯一性索引设置存储位置和存储参数。创建学生选课表SC(sno,cno,grade),要求成绩grade大于0小于100,有两位小数,sno,cno都是外键,而且sno,cno一起做主键。
CREATE TABLE student(
sno NUMBER(6) CONSTRAINT S_PK PRIMARY KEY,
sname VARCHAR2(20) UNIQUE,
sex CHAR(2) CONSTRAINT S_CK1 CHECK(sex in('男', '女')),
sage NUMBER(6,2) CONSTRAINT S_CK2 CHECK(sage between 15 and 25)
);
CREATE TABLE course(
cno NUMBER(6) PRIMARY KEY,
cname CHAR(20) UNIQUE
USING INDEX TABLESPACE USER
STORAGE (INITIAL 64K NEXT 64K)
);
CREATE TABLE SC(
sno NUMBER(6) REFERENCES student(sno),
cno NUMBER(6) REFERENCES course(cno),
grade NUMBER(5,2) CHECK(grade between 0 and100),
CONSTRAINT SC_PK PRIMARY KEY(sno, cno)
);
2.修改表
随便举个例子:将staff员工表重命名成staff_01.
alter table staff rename to staff_01;
向staff_01表中添加age字段
alter table staff_01 add(age varchar2(5));
向“staff_sql0”表添加“sname”字段惟一性约束,从数据字典DBA_CONSTRAINTS查看“staff_sql0”表的约束信息。


删除“staff_sql0”表上“sname”字段惟一性约束,从数据字典DBA_CONSTRAINTS查看“staff_sql0”表的约束信息。


从“staff_sql0”表删除“age”字段,利用DESC命令查看“staff_sql0”表的字段信息。
alter table staff_sql0 drop column age;

将“staff_sql0”表“sname”字段长度修改为30,利用DESC命令查看“staff_sql0”表的字段信息。

索引、视图、同义词及序列操作
- 创建索引
为医院表的医院名称创建索引,并以降序排列,索引名为“hospital_name_index”。
create index 索引名 on 表名 (表中属性名 desc/asc) desc(降序) asc(升序)

2. 查看索引
- 从DBA_INDEXES数据字典中查看员工医疗保险系统所有索引的信息
select * from user_indexs where table_name=upper('hospital');
- 从DBA_INDEXES数据字典中查看“staff_info_index”索引的信息,并查看该索引列的顺序及状态
select * from user_ind_columns where index_name=upper('staff_info_index');

别问我为什么这么喜欢发图,图的信息多啊,比打字快(手动滑稽)
3. 删除索引
- 删除“hospital_name_index”索引。
drop index 索引名

视图操作
- 创建视图
- 为企业表创建视图,视图名为“business_view”。
create view 视图名 as 查询语句
例如:
create view business_view as select bname,baddress,bno,btype,btel from business;

2. 查看视图
(1) 查看当前用户模式下的视图。

(2) 查看“consume_view”视图的信息。

3. 视图数据的更新
(1) 向“business_view”插入一个记录,企业编号为“B1997010287”,企业名称为“格林制药”,企业类型为“企业”,企业地址为“鸭绿江街98号”,联系电话为“84692315”。

看看插入成功没

呦西!
4. 删除视图
drop view 视图名;
删除“business_view”视图

同义词
- 创建同义词(相当于给数据库对象起了个别名)
创建企业表同义词,名为“qyb”。
create public synonym '同义词名' for '表名';

2. 使用同义词
select * from qyb;
- 删除同义词
drop public synonym '同义词名'

序列
- 创建序列
创建序列,该序列最大值为“28000”,最小值为“60”,步长为“1”,可循环,序列名为“ygbx_seq1”。
create sequence '序列名' minvalue xxx maxvalue xxx increment by xxx
cycle;
cycle是指这个序列是可循环的,increment by 1,就是每次递增1,nomaxvalue,没有最大值。

2. 查询序列
查看序列“ygbx_seq1”。
select * from user_sequence where sequence_name='序列名';

3. 修改序列
修改序列“ygbx_seq2”,将该序列最大值设为“1000”

alter sequence '要修改的序列名' 属性名 属性值
- 删除序列
删除序列“ygbx_seq1”。

drop sequence '序列名';
先总结到这,后面继续,本人村树菜鸟,以上有错误和要改正的,欢迎大家指出。
oracle坚决不挂01(表,索引,视图的创建,修改,删除,查询)的更多相关文章
- Oracle的学习二:表管理(数据类型、创建/修改表、添加/修改/删除数据、数据查询)
1.Oracle表的管理 表名和列名的命名规则: 必须以字母开头: 长度不能超过30个字符: 不能使用oracle的保留字: 只能使用如下字符:A-Z, a-z, 0-9, $, # 等. Oracl ...
- MySQL进阶16 - 视图的创建/修改/删除/更新--可更新性的不适用条件
#进阶16 : 视图 /* 含义: 虚拟表,和普通表一样使用;(从5.1开始使用的:)是通过表动态生成的数据 创建语法: create view 视图名 as 查询语句; ---------- 作用: ...
- oracle坚决不挂2(SQLPLUS基础命令)
继续复习!!SQLplus基础命令,其实这个应该是第一个要复习的.因为基础,你懂得..要想学会跑,你先得知道该怎么走吧. win+R 输入cmd ,我们开始启动SQLplus sqlplus user ...
- oracle11g创建修改删除表
oracle11g创建修改删除表 我的数据库名字: ORCL 密码:123456 1.模式 2.创建表 3.表约束 4.修改表 5.删除表 1.模式 set oracle_sid=OR ...
- MySQL进阶11--DDL数据库定义语言--库创建/修改/删除--表的创建/修改/删除/复制
/*进阶 11 DDL 数据库定义语言 库和表的管理 一:库的管理:创建/修改/删除 二:表的管理:创建/修改/删除 创建: CREATE DATABASE [IF NOT EXISTS] 库名; 修 ...
- oracle中查询用户表/索引/视图创建语句
不多说,直接上干货 1.查询当前用户下表的创建语句 select dbms_metadata.get_ddl('TABLE','ux_future') from dual; 2.查询其他用户下表的创建 ...
- 使用Navicat迁移MySQL数据至Oracle时大小写原因报“表或视图不存在”问题处理
使用Navicat提供的数据传输工具将JEECMSv9的MySQL的数据迁移至Oracle数据库,数据迁移成功表都存在,但是在程序启动时提示表或视图不存在. Caused by: java.sql.S ...
- MySQL索引的查看创建和删除
1.索引作用 在索引列上,除了上面提到的有序查找之外,数据库利用各种各样的快速定位技术,能够大大提高查询效率.特别是当数据量非常大,查询涉及多个表时,使用索引往往能使查询速度加快成千上万倍. 例如,有 ...
- oracle--二维表的操作创建修改删除
oracle学习内容 oracle的管理系统学习 oracle的数据管理学习 oracle的用户管理 oracle二维表管理 创建表和字段讲解 --创建表学习 1. 创建表的基本语句:create t ...
随机推荐
- 【题解】HDU4625 JZPTREE
题目链接 题意 给定一棵 n 点的树,定义 \(dis(u,v)\) 为树上路径长度.对于每个点,定义 \(E_u=\sum_{v=1}^n dis(u,v)^k\) ,其中 k 为给定数. 求每个 ...
- 一、Nginx笔记--linux下载安装部署Nginx
Nginx 到底是什么? Nginx 是⼀个⾼性能的HTTP和反向代理web服务器,核⼼特点是占有内存少,并发能⼒强 Nginx ⼜能做什么事情(应⽤场景) Http服务器(Web服务器) 性能⾮常 ...
- 5.深入Istio源码:Pilot-agent作用及其源码分析
转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com 本文使用的Istio源码是 release 1.5. 介绍 Sidecar在注入的时候会 ...
- MySQL5.7 主主复制配置
MySQL 5.7 主主复制配置 一.简介: MySQL主主复制其实就是两个MySQL主从复制组合到一起,接着我的上一篇博客<centos 7 配置 mysql 5.7 主从复制>配置即可 ...
- gitlab+jenkins 持续部署自动化测试
背景:为了减少测试部署时间和减少不必要的重复工作,采用持续集成的方式进行部署,当gitlab的release (测试)分支有代码变动时,自动拉取代码部署测试环境,并进行接口回归测试 优点:部署自动化, ...
- TCP 百万并发 数据连接测试 python+locust
过程笔记和总结 尝试一.locust 测试百万Tcp并发 另一种方式是使用jmeter 基础环境 服务端 虚拟机:Centos7.2 jdk 1.8 客户端 虚拟机: Centos7.2 python ...
- JavaSE24-类加载器&反射&模块化
1.类加载器 1.1 类加载 类加载的描述 当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过类的加载,类的连接,类的初始化这三个步骤来对类进行初始化.如果不出现意外情况,JVM将会连续完 ...
- NameVirtualHost *:80 has no VirtualHosts
服务器会包含所有的 .conf 后缀的文件 当出现如标题所示的错误的时候,检查所有 .conf 文件,是否端口占用,或者重复命令行的情况
- Python 学习笔记(上)
Python 学习笔记(上) 这份笔记是我在系统地学习python时记录的,它不能算是一份完整的参考,但里面大都是我觉得比较重要的地方. 目录 Python 学习笔记(上) 基础知识 基本输入输出 模 ...
- 解决No Python interpreter for the object
1. File --> Settings 2. Project:[项目名] --> Project Interpreter --> 点击齿轮 3. 点击齿轮出现Add,点击Add 4 ...