zoukankan      html  css  js  c++  java
  • MySql数据库_01

    数据库基础_笔记01

    2019年11月12日

    表的创建与管理

    如何创建一个表

    在clc模式下创建一个表语法如下
    CREATE TABLE table_name
    (
    属性名 数据类型 【约束条件】【默认值】
    属性名 数据类型 【约束条件】【默认值】

    );

    create table xs_qk(
    学号 char(10) not null primary key,
    姓名 varchar(10) not null,
    课程 char(3),
    成绩 tinyint);
    

    在这里插入图片描述

    表约束

    一个数据库由多个表组成,表约束就是确定表之间的关联关系。
    表约束包括 主键约束、外键约束、非空约束、唯一性约束和默认约束。

    (主键约束)

    主键可多列组成,主键用于唯一标识数据表中的一条记录(primary key constraint)
    ps:主键不可取空值,主键应对应一个实体完整性,一个数据表中只能定义一个主键(是只能定义,不是只能是一条),主键与外键结合后,可以定义不同数据表之间的关系(这可以加快数据库查询的速度)

    多字段联合主键(多联主键)

    create table xs_qk(
    学号 char(10) not null,
    姓名 varchar(10) not null,
    课程 char(3),
    成绩 tinyint,
    primary key (学号,姓名));  //定义了学号,和姓名两个主键
    

    在这里插入图片描述
    查询此表详情

    show create table xs_qk;
    

    在这里插入图片描述
    DESC命令也可以查询表结构

    desc xs_qk;
    

    在这里插入图片描述
    单字段主键
    在这里插入图片描述

    (外键约束)

    外键指不是本表的主键,但是另一个表的主键。
    ps:外键用于两个表建立链接,一个表可以有一个或多个外键,外键应对应完整性,定义外键后,外键可以为空值,如不为空,,则必须与另一个表中的某个主键值相同,对于两个表,主表是主键所在表,从表是外键所在表,当主表中数据更新后,从表中的数据也会自动更新。

    外键语法:
    【CONSTRAINT<外键名>FOREIGN KEY 字段名1【,字段名2,…】REFERENCES<主表名>主键列1【,主键列2…】
    其中,“外键名"是定义的外键约束名,“字段名”是从表定义为外键的列名,“主表名”是被从表所依赖的表明,“主键列”是主表中的主键列名。
    在这里插入图片描述

    (非空约束)

    指字段值不能为空,如为空属性,用null表示。
    在这里插入图片描述

    (默认约束)

    顾名思义,默认,如果不输入就是默认值。
    在这里插入图片描述

    (唯一性约束)

    用于保证列中不出现重复数据,唯一性约束实现了实体完整性规则。
    在mysql中,唯一性约束可以为NULL,可以重复加入含有NULL,的记录,但主键字段不能为NULL;一个字段中只能有一个主键约束,但可以定义多个唯一性约束。

    在这里插入图片描述

    ps:
    对于非空约束
    1、非空约束指字段的值(数据)不能为空
    2、对于指定了非空约束字段,如果在添加时未指定值,会报错
    3、主键约束同时也隐含了非空约束,主键不能取空值

    对于主键约束
    1、主键只能定义一个主键(多个列的主键也是一个主键)
    2、主键不能取空值

  • 相关阅读:
    搜索引擎代码资源
    shell十三问(很不错的shell解释)
    Export/Import 使用技巧与常见错误
    利用java实现数据结构中常用的插入排序和快速排序算法
    java23种设计模式与追MM
    sqlldr使用小结(zt)
    排序算法的java实现的网址链接
    Rdesktop与Window相联
    java抽取word,pdf的四种武器
    常用数据库JDBC连接写法
  • 原文地址:https://www.cnblogs.com/cqnswp/p/12568889.html
Copyright © 2011-2022 走看看