oracle数据库当中用户的创建,添加,授权,以及表的创建与表的简单介绍,以及在oracle数据库当中的约束以及约束条件的简单介绍

2023-11-06

系列文章目录

(3条消息) oracle数据库简介

文章目录

系列文章目录

前言

一、用户的创建

1.1、创建命令

1.2、给予scott用户权限

 1.3、以scott用户进行连接登录

二、表和表的设计原则

2.1、表的概念

2.1.1、表是从属于用户的

2.1.2、表是逻辑表(概念表),不是物理表

2.2、表结构

三、约束

3.1、约束种类

3.1.1、非空约束

3.1.2、唯一性约束

3.1.3、主键约束(primary key)PK

3.1.4、外键约束(foreign key)FK

3.2、主键与外键

总结


前言

本文主要介绍oracle数据库当中用户的创建,添加,授权,以及表的创建与表的简单介绍,以及在oracle数据库当中的约束以及约束条件的简单介绍

一、用户的创建

1.1、创建命令

create user scott  identified by tiger default tablespace scott_tb_space;

创建一个用户名为scott的用户,设置密码为tiger,给出对应的一个表空间,

 此时scott用户没有任何权限,需要我们自己给其权限

1.2、给予scott用户权限

grant dba to scott;

此时可以退出(exit)尝试以scott用户进行登录

 1.3、以scott用户进行连接登录

conn scott/tiger@xe

此处以scott用户登录,并且以xe实例进入

 可以查看里面的实例【此处有一张序表,原来测试】

select * from dual;

二、表和表的设计原则

2.1、表的概念

  • 数据库中意表为组织单位来存储数据,表原来存放一些事物的信息
  • 表有表名,以及存储的信息
  • 表是一个逻辑结构
  • 表是组织存储数据的单位

2.1.1、表是从属于用户的

查询表(用户名.表名),当前用户查询自己的表时,用户名.可以省略,其他用户查询 别的用户表 ,不能省略,同时必须存在权限。

2.1.2、表是逻辑表(概念表),不是物理表

块(8k) --->区(连续块)-->段(连续区) -->表(多个段) ,数据段不全是表,表一定是数据段。还有其他段:如索引段

2.2、表结构

表由表名、字段(名称+类型+约束)、记录 组成。与 java相对应:

三、约束

  • 约束实际上就是表中数据的限制条件
  • 约束作用——表在设计的时候加入约束的目的就是为了保证表中的记录完整和有效

3.1、约束种类

  • 非空约束(not null)
  • 唯一性约束(unique)
  • 主键约束(primary key) PK
  • 外键约束(foreign key) FK
  • 检查约束(目前MySQL不支持、Oracle支持)

3.1.1、非空约束

用not null约束的字段不能为null值,必须给定具体的数据

创建表,给字段添加非空约束(创建用户表,用户名不能为空)

3.1.2、唯一性约束

unique约束的字段,具有唯一性,不可重复,但可以为null

3.1.3、主键约束(primary key)PK

表设计时一定要有主键

1、主键涉及术语

  • 主键约束
  • 主键字段
  • 主键值

2、以上三种术语关系
表中的某个字段添加主键约束后,该字段为主键字段,主键字段中出现的每一个数据都称为主键值

3、主键约束与“not null unique”区别
给某个字段添加主键约束之后,该字段不能重复也不能为空,效果和"not null unique"约束相同,但是本质不同。

主键约束除了可以做到"not null unique"之外,还会默认添加"索引——index"

4、一张表应该有主键字段,如果没有,表示该表无效
主键值:是当前行数据的唯一标识、是当前行数据的身份证号
即使表中两行记录相关数据相同,但由于主键值不同,所以也认为是两行不同的记录
5、按主键约束的字段数量分类
无论是单一主键还是复合主键,一张表主键约束只能有一个(约束只能有一个,但可以作用到好几个字段)

单一主键:给一个字段添加主键约束
复合主键:给多个字段联合添加一个主键约束(只能用表级定义)

3.1.4、外键约束(foreign key)FK

只能是表级定义
什么是外键?
若有两个表A、B,id是A的主键,而B中也有id字段,则id就是表B的外键,外键约束主要用来维护两个表之间数据的一致性。

A为基本表,B为信息表

1、外键涉及到的术语

  • 外键约束
  • 外键字段
  • 外键值

2、外键约束、外键字段、外键值之间的关系
某个字段添加外键约束之后,该字段称为外键字段,外键字段中每个数据都是外键值

3、按外键约束的字段数量分类

  • 单一外键:给一个字段添加外键约束
  • 复合外键:给多个字段联合添加一个外键约束

4、一张表可以有多个外键字段(与主键不同)
5、分析场景
设计数据库表,用来存储学生和班级信息

注意点
外键值可以为null
外键字段去引用一张表的某个字段的时候,被引用的字段必须具有unique约束
有了外键引用之后,表分为父表和子表

  • 创建先创建父表
  • 删除先删除子表数据
  • 插入先插入父表数据

3.2、主键与外键

  • 主键是用于唯一标识数据库表中每一条记录的字段,它必须具有唯一性和不可更改性。主键可以由一个或多个字段组成,这些字段可以是任何数据类型。主键的作用是确保表中每一条记录都具有唯一标识,方便查询、修改、删除等操作,同时也可以保证表中数据的完整性和正确性。
  • 外键是用于建立数据库表之间关系的字段,它关联了当前表中的数据和其他表中的数据。外键约束用于确保关联数据的一致性和完整性。外键通常是指当前表中的某个字段,它指向另一个表中的主键。外键的作用是建立表与表之间的关联关系,通过外键可以实现表之间的数据查询、更新、删除等操作。

总的来说,主键用于唯一标识数据库表中每一条记录,而外键用于建立表之间的关系,确保数据的一致性和完整性。

总结

以上就是今天的内容~

最后欢迎大家点赞

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

oracle数据库当中用户的创建,添加,授权,以及表的创建与表的简单介绍,以及在oracle数据库当中的约束以及约束条件的简单介绍 的相关文章

随机推荐

  • 究竟什么是token??

    基于服务器验证方式的验证流程 我们都是知道HTTP协议是无状态的 这种无状态意味着程序需要验证每一次请求 从而辨别客户端的身份 在这之前 程序都是通过在服务端存储的登录信息来辨别请求的 这种方式一般都是通过存储Session来完成 随着We
  • Java并发编程学习10-任务执行与Executor框架

    Java并发编程学习系列 任务执行与Executor框架 任务执行 1 串行地执行任务 2 显式地为任务创建线程 3 无限制创建线程的不足 Executor框架 1 基于 Executor 的 Web 服务器 2 执行策略 3 线程池 4
  • 2019最新 国内唯一的Android从程序员到架构师全套教程

    课程目标 国内唯一的Android从程序员到架构师全套视频教程 适用人群 Android开发至少两年经验的IT工程师 想深入了解Android开源平台的资深工程师 Android项目团队技术管理者 课程概述 遵循敏捷的迭代过程 从思想 方法
  • (二)Rocketmq目录结构及设计目标

    文章目录 一 目录结构 二 设计理念与目标 2 1设计理念 2 2设计目标 一 目录结构 1 broker broker模块 2 client 消息客户端 包含消息生产者 消费者相关类 3 common 公共包 4 dev 开发者信息 非源
  • 如何安装vtk入门篇

    转载 原来写过一些文字 觉得没有用 现在发现很多朋友学习vtk起步很难 自己又把它拿出来 改了改贴出来 同时也帖在自己的blog里 希望对新手有帮助 我这里使用的是vtk5 0 介绍如何安装在windows和linux上 都是我实践过的流程
  • 多项目管理的一点思考

    与人闲聊 被问到如何去同时管理多个软件项目 讨论思考有三 第一 制度化 多个项目进行 势必会分散人的精力 在有限的时间如何把这些工作做好 通过规范化的制度 各个项目的文档 进度都应该做到去规范 制度化 第二 项目进度的掌控 软件项目最重要的
  • 详解 ElasticSearch Kibana 配置部署

    默认安装部署所在机器允许外网 SSH工具 Putty 链接 https pan baidu com s 1b6gumtsjL L64rEsOdhd4A 提取码 lxs9 Winscp 链接 https pan baidu com s 1tD
  • UE4-AI

    AI的三大阶段 AI的处理过程可以分为三大阶段 感知 思考 行动 感知 对AI当前状态作记录 基本过滤 也是一种感知行为 基本过滤 如果其他感知的优先级更高 会忽略部分信息 思考 AI利用感知阶段收集到的信息 对当前信息和目标进行评估 为之
  • kubenetes创建Pod/RC时的一些报错问题解决

    问题1 虽然每次通过yaml创建rc都显示成功了 但是 kubectl get pod却没显示任何的pod 问题2 直接通过yaml创建pod提示apixxx 问题3 通过 json文件创建pod 未验证 原因是身份认证 解决办法 跳过认证
  • 【OpenCV】图像梯度处理

    使用Sobel算子 cv2 Sobel 图像对象 图像深度 水平方向 dx 竖直方向 dy Sobel算子大小 图像深度 通常设为 1 表示输入与输出的图像深度保持一致 水平方向 若选择计算水平方向则设为 1 否则为 0 竖直方向 若选择计
  • 仿动画效果按钮(firemonkey)

    如图所示 放置一个如此的按钮 1 放置roundrectangle1 2 放置floatanimation1 parent设置为roundrectangle1 3 设置floatanimation1属性 4 放置floatanimation
  • 记录分页懒加载功能,数据列表,每次触底实现分页懒加载

    1 引用uview加载更多标签 页面中定义
  • 【Y 新闻】YMatrix携手三一集团,荣获“2023爱分析·数据库最佳实践案例”

    2023 年 8 月 16 日 由爱分析主办的第五届数据智能高峰论坛在北京 JW 万豪酒店成功举办 本次论坛以 激活数据资产 释放数据价值 为主题 聚焦企业在数据能力和数据应用建设过程中所面临的系列问题 会上 由 YMatrix 与三一集团
  • MQTT.fx下载安装与使用

    软件下载 Index of apps mqttfx 1 7 1 https file bemfa com hw zip mqtt mqttfx 1 7 1 windows 64 exe 链接 https pan baidu com s 1j
  • 访问github仓库中的资源

    使用GitHub自己的服务器raw githubusercontent com 参考 https www zhihu com question 35011078 使用方法 https raw githubusercontent com 用户
  • 双指针算法模板和应用

    目录 模板 应用场景 例题 注意这种写法会出现 Segmentation Fault 模板 for int i 0 j 0 i lt n i while j lt i check i j j 具体问题的逻辑 常见问题分类 1 对于一个序列
  • QTextEdit显示中文乱码解决,中文GB2312转Unicode,QString、QByteArray 转换,16进制显示,toUtf8与toLocal8Bit区别

    QString QByteArray 的等效转换 QByteArray QString toUtf8 转换为Unicode字符集编码 多字节编码 单个中文占3 4个字节 QByteArray QString toLocal8Bit 转换为G
  • 【第51篇】用于交通预测的时空交互动态图卷积网络

    文章目录 摘要 1 简介 4 实验结果及分析 4 1数据集 4 2基本方法 4 3设置 4 4结果比较与分析 4 5消融研究 4 6不同结构配置的影响 4 7计算时间 5 结论 摘要 https arxiv org abs 2205 086
  • 关于Eclipse的使用入门

    关于Eclipse的使用入门 1 了解Eclipse Eclipse是1999年IBM公司开发的基于Java的可扩展平台 2001年贡献给开源社区 Eclipse基金会管理 每季度更新一次 2 Eclipse中的workSpace工作空间
  • oracle数据库当中用户的创建,添加,授权,以及表的创建与表的简单介绍,以及在oracle数据库当中的约束以及约束条件的简单介绍

    系列文章目录 3条消息 oracle数据库简介 文章目录 系列文章目录 前言 一 用户的创建 1 1 创建命令 1 2 给予scott用户权限 1 3 以scott用户进行连接登录 二 表和表的设计原则 2 1 表的概念 2 1 1 表是从