Oracle数据库之四大语言
一、数据定义语言:
1、用于改变数据库结构,包括创建、更改和删除数据库对象;
2、命令:
create table :创建
alter table 修改
drop table 删除表
truncate table 删除表数据(不可以回滚)
2、创建表:
-- 创建表
create table sclass(
cid int primary key,
cname varchar(10)
) create table java ( ssid int primary key, -- 主键约束 sname varchar2(20) unique, -- 唯一约束 ssex char(5) check(ssex in ('男','女')),--检查约束,检查输入的是否是男或者女 sbirth date not null, -- 非空约束 saddress varchar2(50) default '淄博',-- 默认值约束 --score double check(score between 0 and 100), -- 检查约束的范围写法 cid int, constraint fk_student_class foreign key(cid) references sclass(cid) --设置外键
)
3、修改表结构:
alter 表名 add/modify/drop(增加/修改/删除)列名 类型名/约束
4、截断:
truncate table 表名;
-- 将表中的所有记录全部删除,但保留表结构,并且不写日志;
-- truncate 是DDL语言,
delete from 表名 是DML语言;
5、删除表:drop
6、数据完整性:
可靠性 + 准确性 = 数据完整性
根据数据完整性机制所作用的数据库对象和范围的不同,数据完整性可分为以下四种类型:
①、实体完整性:唯一约束、主键约束;
②、域完整性:限制数据类型、检查约束、默认值、非空约束;
③、参照完整性(引用完整性):外键约束;
④、自定义完整性:规则、存储过程

约束实现数据完整性:
创建表:保证数据的完整性 = 实施完整性约束
二、数据操作语言:
数据操作语言:
检索、插入和修改数据(增 insert、删delete、改update、查select)
insert into java values(1,'张三','男',to_date('1997-02-22','yyyy-mm-dd'),'济南');
日期类型 使用
to_date
--复制表(表不存在)--只复制表结构,不复制表数据(因为1=2,不成立)
create table student as select * from java where 1=2; select * from student; --复制表结构和表内容、不复制约束 create table student2 as select * from java; select * from student2; --插入来自其他表中的数据(select前可以加from) insert into student select * from java; select * from student;
三、事务控制语言:
1、事务是最小的工作单元,作为一个整体进行工作
2、保证事务的整体成功或失败,称为事务控制;
3、用于事务控制的语句有:
commit:提交并结束事务处理;
rollback:撤销事务中已完成的工作;
savepoint:标记事务中可以回滚的点;
四、数据控制语言:
1、数据控制语言为用户提供权限控制语言;
2、命令:
grant:授予权限;
revoke:撤销已授予的权限;
--创建用户
create user yym identified by 123456;
grant connect, resource to yym;--授予权限 --登录管理员的账户,给用户yym设置能访问scott.emp表的权限(只能查看)
grant select on scott.emp to yym with grant option; select * from scott.emp; --管理员撤销yym的访问刚才那个表的权限
revoke select on scott.emp from yym;
Oracle数据库之四大语言的更多相关文章
- Oracle数据库多语言文字存储解决方案
一.关于字符集 字符集(也称字元集,Character Set)就是字符编码表(codepage),一个字符不论英文.中文.韩文等在计算机系统内存或硬盘中通过二进制的字节(Byte)保存,这个二进制的 ...
- oracle数据库操纵语言DML
oracle数据库操纵语言:DML 添加数据: ()直接添加数据: insert into table_name(column_name1,column_name2,...) values(data1 ...
- MyEclipse用Java语言连接Oracle数据库
在MyEclipse下Java连接Oracle数据库 第一步:新建Java项目. 填写项目名,其它设置默认,点击完成即可. 新建java类,填写包名和类名,勾选public static void m ...
- Oracle数据库教程-数据定义语言(表操作)
创建表 建表语法: CREATE TABLE 表名 ( 列1 数据类型 [primary key], 列2 数据类型 default 默认值 [not null], …, constraint 约束名 ...
- Oracle数据库,基础知识
1.Oracle的五大约束条件: 1 主键 primary key2 外键 foreign key,3 唯一 unique,4 检测 check5 非空 not null 实例运用: -- ...
- Oracle 数据库语句大全
Oracle数据库语句大全 ORACLE支持五种类型的完整性约束 NOT NULL (非空)--防止NULL值进入指定的列,在单列基础上定义,默认情况下,ORACLE允许在任何列中有NULL值. CH ...
- Oracle数据库11g各版本介绍及功能比较
.标准版和企 业版.所有这些版本都使用相同的通用代码库构建,这意味着企业的数据库管理软件可以轻松地从规模较小的单一处理器服务器扩展到多处理器服务器集 群,而无需更改一行代码.Oracle数据库11g企 ...
- Oracle数据库,数据的增、删、改、查
oracle数据库中,数据的增.删.改.查,通过SQL语句实现 SQL:结构化查询语言: 特点:不区分大小写:字符串用单引号引起来:语句结束用分号表示结束: 行注释,在语句的最前面加"--& ...
- Oracle数据库基础知识
oracle数据库plsql developer 目录(?)[-] 一 SQL基础知识 创建删除数据库 创建删除修改表 添加修改删除列 oracle cascade用法 添加删除约束主键外 ...
随机推荐
- 避免git clone和push时每次都需要输入用户名和密码
有三种方式解决git clone时每次都需要输入用户名和密码, 1. SSH免密方式 使用git bash ssh-keygen或puttygen.exe生成公钥. 2. 配置全局开机存储认证信息 下 ...
- Vintage_坏客户定义
python信用评分卡建模(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_ca ...
- 图像的ROI区域选择与复制
[opencv学习笔记六]图像的ROI区域选择与复制 孜然 7 人赞同了该文章 图像的数据量还是比较大的,对整张图片进行处理会影响我们的处理效率,因此常常只对图像中我们需要的部分进行处理,也就是感 ...
- Pi1-加电
作为理工男,怎么能不折腾?终于等到我4G版的树莓派4. 1.制作系统.新手当然上官网下载官方系统,img文件,写入tf卡.mac下的步骤请见<mac下制作树莓派系统盘>,一步步来就行.思路 ...
- win32 event事件
原文地址:https://blog.csdn.net/u011394598/article/details/82981399 SetEvent/ResetEvent分别将EVENT置为这两种状态分别是 ...
- helm安使用
参照:https://juejin.im/post/5b6590afe51d4519962f02b1
- 部署TiDB集群
架构图 节点规划 120.52.146.213 Control Machine 120.52.146.214 PD1_TiDB1 120.52.146.215 PD2_TiDB2 120.52.146 ...
- Centos7时区修改方法汇总
方法一: timedatectl set-timezone Asia/Shanghai 方法二: 设置环境变量TZ(这个方法用得比较少,但是有一次就是这个方法帮了我大忙,其他都无法实现修改时区,特此记 ...
- Javascript判斷function是否定義
jQuery可以用 isFunction() 來進行判斷 如果僅使用Javascript可以使用以下的方法 function isFunction(fn){ return typeof fn === ...
- Xamarin Assets文件读取
在Assets文件夹中添加nlog.config文件,在属性中将Build Action设置为AndroidAsset var steam = Assets.Open("nlog.confi ...