Oracle PL / SQL 表 table

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

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

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

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

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

实例:

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

ID Name Born Gender
100 Tom 1983 Male
200 Jack 1981 Male
300 Jane 1983 Male

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

ID Author ID Title Written
10 100 Learn Oracle 1970
20 100 Learn CSS 1990
30 200 An Introduction to Database Systems 2003
40 200 Learn SQL 2000
50 200 Learn HTML 2002
60 200 Learn Database 2005
70 300 Learn SQL 2000
80 300 Learn HTML 2012

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

  • 学习Oracle
  • 学习CSS

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

注意

下表是表1-1的表定义

Column Number Column Name Data Type
1 ID Number
2 Name Character
3 Birth Date Date
4 Gender Character

要创建如表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进行底层开发更可笑的东西。

相关推荐
纯纯沙口9 分钟前
Qt—用SQLite实现简单的注册登录界面
数据库·sqlite
初次见面我叫泰隆22 分钟前
MySQL——3、数据类型
数据库·mysql
zxrhhm42 分钟前
Oracle 中的虚拟列Virtual Columns和PostgreSQL Generated Columns生成列
postgresql·oracle·vr
一叶屋檐44 分钟前
Neo4j 图书馆借阅系统知识图谱设计
服务器·数据库·cypher
好吃的肘子2 小时前
MongoDB 应用实战
大数据·开发语言·数据库·算法·mongodb·全文检索
weixin_472339462 小时前
MySQL MCP 使用案例
数据库·mysql
lqlj22333 小时前
Spark SQL 读取 CSV 文件,并将数据写入 MySQL 数据库
数据库·sql·spark
遗憾皆是温柔3 小时前
MyBatis—动态 SQL
java·数据库·ide·sql·mybatis
未来之窗软件服务4 小时前
Cacti 未经身份验证SQL注入漏洞
android·数据库·sql·服务器安全
fengye2071614 小时前
在MYSQL中导入cookbook.sql文件
数据库·mysql·adb