数据表的创建、约束的名称、外键约束、索引的创建和使用

本文详细介绍了在Oracle数据库中如何创建数据表,包括指定非空约束、唯一约束和主键约束。讨论了约束的命名,并展示了如何设置检查约束。接着讲解了外键约束的概念,以及它在数据库表间建立的关系。最后,探讨了索引的创建和使用,包括全表扫描、索引的最左原则以及在不同查询场景下的表现。强调了索引使用应考虑数据更新频率和性能影响。
摘要由CSDN通过智能技术生成

数据表的创建

DEMO:创建一张保存老师信息的表

DROP TABLE teacher PURGE;
CREATE TABLE teacher(
   tno NUMBER(4),
   tname VARCHAR2(10), 
   tage NUMBER(3),
   tdate DATE);

INSERT INTO teacher  VALUES (1001,'x老师',100,SYSDATE);
INSERT INTO teacher  VALUES (1002,'y老师',100,SYSDATE);
INSERT INTO teacher  VALUES (1003,'z老师',100,SYSDATE);

在这里插入图片描述
DEMO:观察代码

DROP TABLE teacher PURGE;
CREATE TABLE teacher (
	tno NUMBER(4),
	tname VARCHAR2(10),
	tage NUMBER(3),
	tdate DATE
);

INSERT INTO teacher VALUES (1001,'x老师',100,SYSDATE);
INSERT INTO teacher VALUES (1002,'y老师',100,SYSDATE);
INSERT INTO teacher VALUES (1003,'z老师',100,SYSDATE);
INSERT INTO teacher (tname,tage,tdate) VALUES ('z老师',100,SYSDATE);

运行结果如下:
在这里插入图片描述

数据表必须有一个字段表示主键作为数据的唯一标识,这种字段中的数据不应该为null,
此时在创建数据表的时候可以指定该字段不能为null(给该字段做一个约束)

DEMO:指定字段不能为空

DROP TABLE teacher PURGE;
CREATE TABLE teacher (
	tno NUMBER(4) NOT NULL,
	tname VARCHAR2(10),
	tage NUMBER(3),
	tdate DATE
);

INSERT INTO teacher VALUES (1001,'x老师',100,SYSDATE);
INSERT INTO teacher VALUES (1002,'y老师',100,SYSDATE);
INSERT INTO teacher VALUES (1003,'z老师',100,SYSDATE);
INSERT INTO teacher (tname,tage,tdate) VALUES ('z老师',100,SYSDATE);

运行结果如下:
在这里插入图片描述

使用以上的方式就控制了插入数据表中的数据的tno一定不能为null,对tno字段的数据进行了约束,这种约束操作叫作非空约束。

DEMO:继续观察代码

DROP TABLE teacher PURGE;
CREATE TABLE teacher (
    tno NUMBER(4) NOT NULL,
    tname VARCHAR2(10),
    tage NUMBER(3),
    tdate DATE
);

INSERT INTO teacher VALUES (1001,'x老师',100,SYSDATE);
INSERT INTO teacher VALUES (1002,'y老师',100,SYSDATE);
INSERT INTO teacher VALUES (1003,'z老师',100,SYSDATE);
INSERT INTO teacher VALUES (1004,'w老师',100
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值