zoukankan      html  css  js  c++  java
  • day15(mysql之零碎知识)

    数据完整性

      实体完整性

      实体: 表中一行(一行记录)代替一个实体

      实体完整性的作用: 标识每一行数据不重复。

      约束类型: 主键约束, 唯一约束,自动增长列。

                                 主键约束: 标识该列唯一,非空。  

                注:  每个表中必须要有一个主键

                添加主键的三中方式:

                  1.在创建表的过程中直接创建。   

    CREATE TABLE student(
    id int primary key,
    name varchar(50)
    );
    

                  2.  在创建表中的特殊创建方式:  优点在于  可以联合创建主键

    CREATE TABLE student(
    id int,
    name varchar(50),
    primary key(id)
    );
    CREATE TABLE student(
    classid int,
    stuid int,
    name varchar(50),
    primary key(classid,stuid)
    );
    

                  3.在表创建完成之后再给列创建主键

    alter  table  表名 add  primary key (列名);
    

      

      

            唯一约束;    标识该列的值不能重复 。

        

    CREATE TABLE student(
    Id int primary key,
    Name varchar(50) unique
    );

            自增长:  标识 该列的数据会自动增长。 不需要人为的给值。

    sqlserver数据库 (identity)  oracle数据库( sequence)
    
    给主键添加自动增长的数值,列只能是整数类型
    CREATE TABLE student(
    Id int primary key auto_increment,
    Name varchar(50)
    );
    INSERT INTO student(name) values(‘tom’);
    

      

      域完整性

        作用: 限制单元格的数据正确,不对照此列的其他单元格比较

          域代表当前单元格;

          域完整性的约束: 数据类型    默认值约束(default)   非空约束(not null)  check约束(mysql不支持)

        默认值约束:

    CREATE TABLE student(
    Id int pirmary key,
    Name varchar(50) not null,
    Sex varchar(10) default ‘男’
    );

    insert into student1 values(1,'tom','');

    insert into student1 values(2,'jerry',default);

          非空约束:not null

    CREATE TABLE student(
    Id int pirmary key,
    Name varchar(50) not null,//该列表示为非空
    Sex varchar(10)
    );
    
    INSERT INTO student values(1,’tom’,null);
    

      引用完整性(参照完整性)

        外键:foreign   key

          创建外键的方法

        ALTER TABLE 表名  ADD CONSTRAINT 主键名   FOREIGN KEY (列名)  REFERENCES 表名(列名);

       表与表之间的关系;

          一对一;

          一对多;

          多对多;

      

  • 相关阅读:
    DateTimePicker控件在WinXP下的BUG
    SmartAssembly .net混淆后,无法找到部分类型
    RPC_E_SERVERFAULT excel com操作错误
    System.Reflection.ReflectionTypeLoadException
    login SMTP send mail error : Unable to read data from the transport connection: net_io_connectionclosed
    静态类无法实现接口
    Combobox出现System.Data.DataRowView的原因
    .net 4.0 : Missing compiler required member 'Microsoft.CSharp.RuntimeBinder.Binder.****'
    EOS 主节点同步
    使用tcpdump抓取EOS帐户创建与交易数据
  • 原文地址:https://www.cnblogs.com/fjkgrbk/p/mysql_table.html
Copyright © 2011-2022 走看看