主键约束 primary key
not null
check
unique 唯一约束
create table student( --学生表
xh number(4) constraint pk_stu primary key, --学号主键
xm varchar2(10) constraint nn_stu not null, --姓名不能为空
sex char(2) constraint ck_stu_sex check (sex in ('男','女')), --性别
birthday date constraint uq_bir unique, --日期
sal number(7,2) constraint ck_sal check (sal between 500 and 1000)--奖学金 sal >=500 and sal <=1000
);
<2>建立约束的同时给约束指定名字,便于删除
create table cla( --班级表
id number(2) constraint pk_cla primary key, --班级编号
cname varchar2(20) constraint nn_cla not null --班级名字
);
create table stu( --学生表
xh number(4) constraint pk_stu primary key, --学号是主键
xm varchar2(20) constraint nn_stu not null, --姓名非空
age number(2) constraint ck_stu check (age between 10 and 90),--年龄在10到90之间(10<= age <=90 )
birthday date,
shenfenzheng number(18) constraint uq_stu unique, --身份证唯一
classid number(2) constraint fk_stu references cla(id) -- 班级编号外键
--(引用的一定是另外表的主键或唯一性约束的字段)
);
3)建完表后加约束
加约束
加主键
alter table student add constraint pk_stu
primary key (xh);
加非空
alter table student modify (xm not null);
检查约束
alter table student add check(sex in ('男','女'));
alter table student add constraint ck_sal check(sal between 500 and 1000));
添加 主键
alter table cla add constraint pk_cla
primary key (id);
加 not null
alter table cla modify
(cname not null);
学生表student:
create table student(
xh number(4) ,
xm varchar2(20) ,
age number(2),
birthday date,
shenfenzheng number(18),
classid number(2) references cla(id)
);
加外键约束
alter table student add constraint fk_stu
foreign key (classid) references cla(id);
加主键
alter table student add constraint pk_stu
primary key (xh);
加not null
alter table student modify(xm not null);
加检查约束
alter table student add constraint cc_age
check (age >= 10 and age <=90);
加唯一约束
alter table student add constraint
uq_sfz unique(shenfenzheng);
加外键约束
alter table student add constraint
fk_stu foreign key (classid)
references cla(id);
分享到:
相关推荐
实验二 使用 SQL 语言进行建表和修改表结构 本实验的目的是熟悉使用 SQL 语言进行数据库的设计、创建、修改和删除操作。在本实验中,我们将学习如何使用 SQL 语言创建数据库、设计表结构、输入数据、修改表结构和...
小白必看!
数据库建表、约束和外键实践 ...我们通过实践例子,了解了如何创建表结构、添加约束和外键,如何使用Identity和TimeStamp来记录数据的修改时间和自动递增列。这些知识点对于数据库设计和开发都是非常重要的。
### SQL约束(建表、建约束、关系) #### 基础概念 SQL中的约束(Constraint)是一种由Microsoft SQL Server提供的机制,用于自动维护数据库的完整性。约束定义了可以输入到表或表的单个列中的数据的限制条件。...
更改字段类型或默认值,使用ALTER COLUMN关键字,如 `ALTER TABLE [表名] ALTER COLUMN [字段名] NVARCHAR(50) NULL`,此语句将字段名对应的字段类型更改为NVARCHAR(50),并设置为可空。 9. 重命名表: 达梦数据库...
这个实验涵盖了数据库基础操作的核心部分,包括基本的DDL(Data Definition Language)用于创建和修改表,DML(Data Manipulation Language)用于插入和更新数据,以及数据库约束的运用,以确保数据的完整性和一致性...
- **表结构定义**:创建名为`tableok`的表,并定义了多个列,包括允许空值、不允许空值、默认值、检查约束、主键约束、唯一约束等。 - **主键约束**:`cola_primary`列被设置为主键,确保该列的唯一性。 - **唯一...
### 数据库建表操作SQL语句...以上就是关于数据库建表操作的SQL语句大全及解释,涵盖了从创建表、数据的增删改查到表的维护等多个方面。希望这些内容能够帮助新手快速上手SQL语句,并熟练掌握数据库管理的基础技能。
建表语句(CREATE TABLE)是SQL语言的基本组成部分,用于定义数据库中的表结构,包括字段名、数据类型、约束条件等。 Excel 2003作为一个电子表格软件,提供了丰富的数据组织和分析功能,但并不直接支持SQL操作。...
根据给定的文件信息,我们将深入探讨“oracle建表修改字段”的核心知识点,包括如何使用SQL语句创建表、定义字段属性以及如何修改现有字段的属性。 ### 创建表(Create Table) 在Oracle中,使用`CREATE TABLE`...
本文将详细介绍如何使用T-SQL语句创建表、添加约束以及建立表间的关系。 首先,我们来看创建表的操作。创建表的基本语法是 `CREATE TABLE`,后跟表名和字段定义。例如: ```sql CREATE TABLE Student ( StudentId...
- **修改表结构**:使用ALTER TABLE语句,可以添加、删除或修改列,以及更改约束条件。 ```sql ALTER TABLE 表名 ADD (新列定义), DROP COLUMN 列名, MODIFY 列名 新数据类型; ``` - **删除表**:使用DROP TABLE...
- **说明**:此命令用于在`stuinfo`表的`stu_id`列上添加外键约束`stu_fk`,该约束引用`students`表的`id`列,并设置了级联删除,即当`students`表中的记录被删除时,`stuinfo`表中对应的所有记录也会被自动删除。...
这里创建了一个名为 `stuMarks` 的表,并通过外键约束将 `stuNo` 字段与 `stuInfo` 表关联起来。 #### 六、级联删除 当删除主表中的记录时,可能会导致外键表中的数据无效。级联删除可以在删除主表记录的同时,...
每个模块的SQL文件不仅包含建表语句,还可能包含其他DDL语句,如ALTER TABLE(修改表结构)、DROP TABLE(删除表)等,以及DML语句(数据操作语言),如INSERT INTO(插入数据)、UPDATE(更新数据)、DELETE(删除...
"自建表沙发"这个标题可能是在比喻创建自定义数据库表的过程,就像布置一个舒适的沙发,需要精心设计和布局。在这个场景中,我们主要关注的是SQL语句在创建、修改和查询数据库表中的应用。 首先,让我们来理解SQL的...
本话题主要关注如何利用Python的xlrd库来读取Excel文件,并根据其中的数据生成适用于Oracle数据库的建表语句。 首先,xlrd是一个Python库,专门用于读取Excel文件。它支持多种Excel文件格式,包括.xls和.xlsx,使得...
4. 修改主键:可以更改表的主键,但需要注意这可能会导致数据丢失。 ```sql ALTER TABLE tablename ADD CONSTRAINT tb_PRIMARY PRIMARY KEY CLUSTERED (列名); ``` 5. 修改约束:调整或创建新的完整性约束。 ``...
这里创建了一个名为`stuMarks`的成绩表,并为它添加了一个外键约束`fk_stuNo`,该约束引用了`stuInfo`表的`stuNo`字段,并设置了`on delete cascade`,表示当`stuInfo`表中的记录被删除时,`stuMarks`表中相应的记录...