`
jonsamwang
  • 浏览: 36934 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
最近访客 更多访客>>
社区版块
存档分类
最新评论

建表并修改表约束

 
阅读更多

主键约束 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);

0
0
分享到:
评论

相关推荐

    实验二 使用SQL语言进行建表和修改表结构.doc

    实验二 使用 SQL 语言进行建表和修改表结构 本实验的目的是熟悉使用 SQL 语言进行数据库的设计、创建、修改和删除操作。在本实验中,我们将学习如何使用 SQL 语言创建数据库、设计表结构、输入数据、修改表结构和...

    4建表语法,表约束,表数据类型,修改表,追加删除约束,增删改笔记.sql

    小白必看!

    数据库建表-建约束-建外键.doc

    数据库建表、约束和外键实践 ...我们通过实践例子,了解了如何创建表结构、添加约束和外键,如何使用Identity和TimeStamp来记录数据的修改时间和自动递增列。这些知识点对于数据库设计和开发都是非常重要的。

    SQL约束(建表、建约束、关系)

    ### SQL约束(建表、建约束、关系) #### 基础概念 SQL中的约束(Constraint)是一种由Microsoft SQL Server提供的机制,用于自动维护数据库的完整性。约束定义了可以输入到表或表的单个列中的数据的限制条件。...

    达梦数据库建表操作SQL语句大全.pdf

    更改字段类型或默认值,使用ALTER COLUMN关键字,如 `ALTER TABLE [表名] ALTER COLUMN [字段名] NVARCHAR(50) NULL`,此语句将字段名对应的字段类型更改为NVARCHAR(50),并设置为可空。 9. 重命名表: 达梦数据库...

    实验2oracle表操作练习(建表和表的修改).doc

    这个实验涵盖了数据库基础操作的核心部分,包括基本的DDL(Data Definition Language)用于创建和修改表,DML(Data Manipulation Language)用于插入和更新数据,以及数据库约束的运用,以确保数据的完整性和一致性...

    SQL之-建库、建表、建约束、关系SQL基本语句大全.doc

    - **表结构定义**:创建名为`tableok`的表,并定义了多个列,包括允许空值、不允许空值、默认值、检查约束、主键约束、唯一约束等。 - **主键约束**:`cola_primary`列被设置为主键,确保该列的唯一性。 - **唯一...

    数据库建表操作SQL语句大全

    ### 数据库建表操作SQL语句...以上就是关于数据库建表操作的SQL语句大全及解释,涵盖了从创建表、数据的增删改查到表的维护等多个方面。希望这些内容能够帮助新手快速上手SQL语句,并熟练掌握数据库管理的基础技能。

    excel2003 生成oracle 建表语句

    建表语句(CREATE TABLE)是SQL语言的基本组成部分,用于定义数据库中的表结构,包括字段名、数据类型、约束条件等。 Excel 2003作为一个电子表格软件,提供了丰富的数据组织和分析功能,但并不直接支持SQL操作。...

    oracle建表修改字段

    根据给定的文件信息,我们将深入探讨“oracle建表修改字段”的核心知识点,包括如何使用SQL语句创建表、定义字段属性以及如何修改现有字段的属性。 ### 创建表(Create Table) 在Oracle中,使用`CREATE TABLE`...

    SQL Server中用T-SQL语句实现(建表、键约束、建关系)

    本文将详细介绍如何使用T-SQL语句创建表、添加约束以及建立表间的关系。 首先,我们来看创建表的操作。创建表的基本语法是 `CREATE TABLE`,后跟表名和字段定义。例如: ```sql CREATE TABLE Student ( StudentId...

    Oracle_基本建表语句-操作语句

    - **修改表结构**:使用ALTER TABLE语句,可以添加、删除或修改列,以及更改约束条件。 ```sql ALTER TABLE 表名 ADD (新列定义), DROP COLUMN 列名, MODIFY 列名 新数据类型; ``` - **删除表**:使用DROP TABLE...

    Oracle 基本建表语句集

    - **说明**:此命令用于在`stuinfo`表的`stu_id`列上添加外键约束`stu_fk`,该约束引用`students`表的`id`列,并设置了级联删除,即当`students`表中的记录被删除时,`stuinfo`表中对应的所有记录也会被自动删除。...

    sql_存在检测、建库、_建表、约束、外键、级联删除[归类].pdf

    这里创建了一个名为 `stuMarks` 的表,并通过外键约束将 `stuNo` 字段与 `stuInfo` 表关联起来。 #### 六、级联删除 当删除主表中的记录时,可能会导致外键表中的数据无效。级联删除可以在删除主表记录的同时,...

    建表语句.zip

    每个模块的SQL文件不仅包含建表语句,还可能包含其他DDL语句,如ALTER TABLE(修改表结构)、DROP TABLE(删除表)等,以及DML语句(数据操作语言),如INSERT INTO(插入数据)、UPDATE(更新数据)、DELETE(删除...

    自建表沙发

    "自建表沙发"这个标题可能是在比喻创建自定义数据库表的过程,就像布置一个舒适的沙发,需要精心设计和布局。在这个场景中,我们主要关注的是SQL语句在创建、修改和查询数据库表中的应用。 首先,让我们来理解SQL的...

    通过xlrd读取excel生成oracle的建表语句

    本话题主要关注如何利用Python的xlrd库来读取Excel文件,并根据其中的数据生成适用于Oracle数据库的建表语句。 首先,xlrd是一个Python库,专门用于读取Excel文件。它支持多种Excel文件格式,包括.xls和.xlsx,使得...

    Oracle__SQL建表小结

    4. 修改主键:可以更改表的主键,但需要注意这可能会导致数据丢失。 ```sql ALTER TABLE tablename ADD CONSTRAINT tb_PRIMARY PRIMARY KEY CLUSTERED (列名); ``` 5. 修改约束:调整或创建新的完整性约束。 ``...

    sql存在检测、建库、建表、约束、外键、级联删除[文].pdf

    这里创建了一个名为`stuMarks`的成绩表,并为它添加了一个外键约束`fk_stuNo`,该约束引用了`stuInfo`表的`stuNo`字段,并设置了`on delete cascade`,表示当`stuInfo`表中的记录被删除时,`stuMarks`表中相应的记录...

Global site tag (gtag.js) - Google Analytics