Oracle PL / SQL 表 table

关系数据库允许您在数据库管理系统(DBMS)中存储多个表。

您可以使用计算机上的查询语言来操作表中的数据。

当前的查询语言是结构化查询语言(SQL)。

SQL是一组无关的命令,用于操作关系数据库管理系统(RDBMS)中的表中的数据。

关系数据库中的表是关于如何在存储数据时组织数据的逻辑定义。

实例:

表1-1。关系数据库Geniuses(作者)

IDNameBornGender
100Tom1983Male
200Jack1981Male
300Jane1983Male

表1-2。关系天才的出版物(作者出版物)

IDAuthor IDTitleWritten
10100Learn Oracle1970
20100Learn CSS1990
30200An Introduction to Database Systems2003
40200Learn SQL2000
50200Learn HTML2002
60200Learn Database2005
70300Learn SQL2000
80300Learn HTML2012


如果你看表​​1-1中的tom数据,你会看到他的ID为100.接下来,如果你看表​​1-2中的ID 100的数据,你会看到他写了两个标题:您可以通过使用这两个表中的公共基准来找到每个作者所编写的出版物ID。

  • 学习Oracle
  • 学习CSS

这两个表具有关系,因为它们共享具有相同值的ID列。

注意

下表是表1-1的表定义

Column NumberColumn NameData Type
1IDNumber
2NameCharacter
3Birth DateDate
4GenderCharacter

要创建如表1-3中定义的authors表,在Oracle中,您需要创建一个SQL脚本。数据定义语言(DDL)

在SQL中,它被称为数据定义语言(DDL)。

它是用于定义关系数据库的SQL。

以下代码显示了authors表的DDL。

CREATE TABLE authors ( id number(38), name varchar2(100), birth_date date, gender varchar2(30) 
); 

CREATE TABLE语句的语法如下:

CREATE TABLE <table_name> ( <column_name_1> <data_type_1>, <column_name_2> <data_type_2>, <column_name_N> <data_type_N> 
); 

<table_name>是表的名称,<column_name>是列的名称,<data_type>是Oracle数据类型之一。

以下是您最常使用的Oracle数据类型:

VARCHAR2:最多可存储32,767字节的文本,如列中的数据。必须通过在关键字VARCHAR2之后的括号中指定所需的数字来定义最大字符数。

NUMBER:存储精度为38位的十进制数。您可以控制数字的大小。您可以通过在关键字后面的括号中指定所需的约束,指定小数点左边的最大位数,后跟逗号(,),也可以指定小数点右边的最大小数位数。数。

DATE:存储日期和时间值。

要创建author_books表,请按照下列步骤操作。

CREATE TABLE author_books(id number(38),title varchar2(100),publish_date date);

索引

您应该在每个表的主键列上创建唯一索引。

主键列唯一标识表中的条目。

在authors表中,该主键列是id。

让我们对authors表的name,birth_date和gender列创建一个唯一索引。

CREATE UNIQUE INDEX authors_uk1 on authors (name, birth_date, gender ); 

CREATE INDEX语句的语法如下:

CREATE [UNIQUE] INDEX <index_name> on <table_name> ( <column_name_1>, <column_name_2>, <column_name_N> 
); 

其中<index_name>是索引的名称,<table_name>是表的名称,<column_name>是列的名称。

关键字UNIQUE是可选的,由[ ]它周围的方括号表示。

这意味着数据库必须检查以确保列的值的组合在表中是唯一的。

以下DDL显示如何在发布表中的标题列上创建索引。

CREATE INDEX author_books_k1 on author_books (title); 

 CSDN:程序猿 寄语:
1、作为一个真正的程序员,首先应该尊重编程,热爱你所写下的程序,他是你的伙伴,而不是工具。
2、程序员可以让步,却不可以退缩,可以羞涩,却不可以软弱,总之,程序员必须是勇敢的。
3、编程是一种单调的生活,因此程序员比普通人需要更多的关怀,更多的友情。
4、程序不是年轻的专利,但是,他属于年轻。
5、没有情调,不懂浪漫,也许这是程序员的一面,但拥有朴实无华的爱是他们的另一面。
6、一个好汉三个帮,程序员同样如此。
7、一个100行的代码调试都可能会让程序员遇到很多挫折,所以,面对挫折,我们永远不能低头。
8、调试完一个动态连接函数,固然值得兴奋,但真正的成功远还在无数个函数之后。
9、程序是我的生命,但我相信爱她甚过爱我的生命。
10、信念和目标,必须永远洋溢在程序员内心。
11、就算我们站在群山之颠,也别忘记雄鹰依旧能从我们头顶飞过。骄傲是比用JAVA进行底层开发更可笑的东西。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/38463.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CleanMyMacX2024免费且强大的mac电脑系统优化工具

如果你的Mac电脑出现了存储空间不足、运行缓慢、电池电量消耗过快等问题&#xff0c;那么CleanMyMacX这款软件或许能为你提供解决方案。作为一款强大的系统优化工具&#xff0c;它能够帮助用户清理垃圾文件、优化内存和电池使用&#xff0c;从而提升Mac的性能表现&#xff0c;让…

后端之路第三站(Mybatis)——XML文件操作sql

一、XML映射文件是啥 前面我们学过了在Mapper接口用注解的方式来操作sql语句 那么XML映射文件就另一种操作sql语句的方法 为什么还要有这么个玩意&#xff1f; 我简单说就是&#xff1a;如果有的sql特别复杂的话&#xff0c;比如需要【动态sql】的话&#xff0c;就得用到XM…

【Android面试八股文】Fragment的add和replace的区别,分别对Fragment的生命周期有什么影响?

文章目录 一、Fragment的add和replace的区别 ,分别对Fragment的生命周期有什么影响?1.1 `add` 方法1.2 `replace` 方法1.3 应用场景1.4 Fragment事务操作提交流程1.5 replace操作的本质是不是就是remove操作和add操作的组合?1.6 示例代码:将一个已经存在的 `FragmentA` 替换…

电脑开机之后,键盘鼠标需要重新插拔才能正常使用?

前言 小白平时修电脑修得多&#xff0c;总是会遇到各种各样的奇葩问题。这不&#xff0c;又有一位小伙伴来咨询&#xff1a;电脑开机之后&#xff0c;键盘鼠标都不能用&#xff0c;需要重新插拔一下才能正常使用。 啧啧啧&#xff0c;真的是很奇怪的问题&#xff0c;基本上没见…

分页缓存与下拉刷新的整合原理 - DoraPageDatabaseCacheRepository

何为分页缓存&#xff1f; 顾名思义&#xff0c;分页缓存就是边分页边缓存&#xff0c;分页通常使用下拉刷新控件实现&#xff0c;而缓存通常说的是指磁盘缓存&#xff0c;即保存到数据库中&#xff0c;数据库本身也是一个索引文件。 为什么缓存还要分页&#xff1f; 在很大…

SSH 无密登录配置流程

一、免密登录原理 非对称加密&#xff1a; 由于对称加密的存在弊端&#xff0c;就产生了非对称加密&#xff0c;非对称加密中有两个密钥&#xff1a;公钥和私钥。公钥由私钥产生&#xff0c;但却无法推算出私钥&#xff1b;公钥加密后的密文&#xff0c;只能通过对应的私钥来解…

光速入门 Tailwind CSS

文章目录 入门安装IDE 设置使用预编译器生产环境优化 基础概念分层指令tailwindlayerapplyconfig 函数theme()screen() 基础案例怎么设置属性任意值&#xff1f;hover 父元素时&#xff0c;怎么选中子元素添加样式&#xff1f;添加 animation 动画 配置主题 Tailwind CSS 中文网…

.so: file not recognized: file format not recognized

项目场景&#xff1a; 自Linux 4.8起&#xff0c;传统的GPIO sysfs接口被弃用。libgpiod操作gpio的方式感觉更加方便。 但是单板上好像没装这个工具&#xff0c;又到了熟悉的交叉编译环节&#xff08;痛苦&#xff09;。 问题描述 按照流程装完libgpiod&#xff0c;自信地去交…

安卓Gradle学习与应用:从入门到实践

引言 在Android开发的世界里&#xff0c;Gradle不仅仅是一个构建工具&#xff0c;它更是一种强大的自动化系统&#xff0c;能够帮助开发者高效地管理项目依赖、编译、测试、打包以及部署。本篇博客旨在深入探讨Gradle在Android开发中的应用&#xff0c;从基础概念到实战技巧&a…

334. 递增的三元子序列

334. 递增的三元子序列 题目链接&#xff1a;334. 递增的三元子序列 代码如下&#xff1a; class Solution { public://贪心bool increasingTriplet(vector<int>& nums) {if(nums.size()<3) {return false;}int firstnums[0],secondINT_MAX;for(int i1;i<…

Go源码--context包

简介 Context 是go语言比较重要的且也是比较复杂的一个结构体&#xff0c;Context主要有两种功能: 取消信号&#xff1a;包括直接取消&#xff08;涉及的结构体&#xff1a;cancelCtx ; 涉及函数&#xff1a;WithCancel&#xff09;和携带截止日期的取消&#xff08;涉及结构…

密室逃脱——收集版

一、原版修改 1、导入资源 Unity Learn | 3D Beginner: Complete Project | URP 2、设置Scene 删除SampleScene&#xff0c;打开UnityTechnologies-3DBeginnerComplete下的MainScene 3、降低音量 (1) 打开Hierarchy面板上的Audio降低音量 (2) 打开Prefabs文件夹&#xf…

Git安装与使用及整合IDEA使用的详细教程

1. 版本控制软件介绍 版本控制软件提供完备的版本管理功能&#xff0c;用于存储、追踪目录&#xff08;文件夹&#xff09;和文件的修改历史&#xff0c;是软件开发者的必备工具&#xff0c;是软件公司的基础设施。版本控制软件的最高目标&#xff0c;是支持软件公司的配置管理…

第三天:LINK3D核心原理讲解【第2部分】

三、 变量 // 点云容器 pcl::PointCloud<pcl::PointXYZI> laserCloud; // 一帧原始点云 pcl::PointCloud<pcl::PointXYZI> cornerPointsLessSharp; // 次极大边线点 pcl::PointCloud<pcl::PointXYZI> surfPointsLessFlat; // 次极小平面点 pcl::PointCloud&…

ubuntu中后台启动一个jar

1.使用 nohup 和 & 启动应用程序&#xff1a; nohup java -jar 你的jar包.jar > output.log 2>&1 &解释&#xff1a; nohup&#xff1a;忽略挂起信号&#xff08;SIGHUP&#xff09;&#xff0c;使进程在退出终端后继续运行。java -jar lxyoj-code-sandbox-…

管理统计学

第1章 统计学是收集、处理、分析、解释数据并从数据中得出结论的科学。 统计学是处理数据的方法论。 参数 表示总体特征的概括性数字度量&#xff0c;是研究者想要了解的总体的某种特征值。 统计量 是用来描述样本特征的概括性数字度量。 常用统计量包括&#xff1a; &#xff…

达梦数据库系列—14. 表空间的备份和还原

目录 1、表空间备份 2、表空间还原 3、表空间恢复 4、增量还原恢复 1、表空间备份 表空间只能在联机状态下进行备份。 BACKUP TABLESPACE TBS BACKUPSET /dm/backup/dm_bak/ts_bak_01; 完全备份 BACKUP TABLESPACE TBS FULL BACKUPSET /dm/backup/dm_bak/ts_full_bak_01…

ESP8266[ 关于-巴发云MQTT/TCP:arduino 设置回调函数 ] 日志2024/6/29

ESP8266 [ 关于-巴发云MQTT/TCP:arduino 设置回调函数 ] 日志2024/6/29 arduino库:#include <PubSubClient.h> 回调函数 是其库设置好的 可以改名字 这里只写上关键代码 设置客户端为 A 关键代码: A.setCallback(回调名) //MQTT 回调处理mqttmsgg(自定义…

zdppy_api+vue3实现前后端分离的登录功能

实现思路 1、准备zdppy的开发环境 2、使用amauth提供的低代码接口&#xff0c;直接生成login登录接口 3、使用之前开发的登录模板渲染登录界面 4、给登录按钮绑定点击事件 5、给用户名和密码的输入框双向绑定数据 6、使用axios在登录按钮点击的时候&#xff0c;携带用户数据发…

PySide(PyQt)与OpenCV图像格式的相互转换

PySide和OpenCV在图像格式上的区别&#xff1a; 主要表现在图像数据的存储方式和使用场景上。以下是一些关键区别&#xff1a; 1. 数据结构 PySide: QImage 和 QPixmap 是 PySide 中常用的图像表示形式。 QImage&#xff1a;用于直接访问图像的像素数据&#xff0c;适合需要…