zoukankan      html  css  js  c++  java
  • MySQL表的操作02

    【1】设置非空约束(NOT NULL ,NK)--->>>目的是f防止某些字段中的内容为空

    CREATE TABLE +table_name (

      属性名   数据类型   NOT NULL,

    .........

    );

    【2】设置字段的默认值(DEFAULT)

    CREATE TABLE +table_name (

      属性名  数据类型  DEFAULT  默认值,

    ........

    );

    【3】设置唯一约束(UNIQUE,UK)===>>>保证字段的唯一性,比如记录学生档案信息的时候,要保证学生的学号信息的唯一性。

    CREATE TABLE +table_name (

      属性名  数据类型  UNIQUE,

    .........

    );

    【4-1】设置单字段主键约束(PRIMARY KEY,PK)===>>>主键约束在表中定义一个主键来唯一确定表中每一行数据的标识符。每张数据表只能存在一个主键;主键保证记录的唯一性;主键自动为NOT NULL(非空)。有类似UNIQUE的效果,来保证字段的唯一性。

     CREATE TABLE +table_name
        (属性名  数据类型 ,
         属性名  数据类型 ,
         ......
        PRIMARY KEY(属性名));

    例子:

     CREATE TABLE stu_info
         (id int ,
         name VARCHAR(12),
         yeold int,
         PRIMARY KEY(id));

    若输入与主键重复的字段,则报错!!!

    mysql> INSERT INTO stu_info VALUE(1,'jack',25);
    ERROR 1062 (23000): Duplicate entry '1' for key 'PRIMARY'

    【4-2】多字段主键

     CREATE TABLE +table_name
        (属性名  数据类型 ,
         属性名  数据类型 ,
         ......
        PRIMARY KEY(属性名1,属性名2,.....));     >>>注意:此时表示属性名1和属性名2同时都不重复,是“且”的含义。否则输入命令不报错

    【5】设置字段值自动增加(AUTO_INCREMENT)    >>>默认下,该字段的值是从1开始增加,每增加一条记录,记录中该字段的值就会在前一条记录的基础上加1。

    CREATE TABLE +table_name(

      属性名  数据类型  AUTO_INCREMENT,

    ..........

    );

    例子:

    mysql> DESC stu_info;
    +-------+-------------+------+-----+---------+----------------+
    | Field | Type        | Null | Key | Default | Extra          |
    +-------+-------------+------+-----+---------+----------------+
    | ID    | int(11)     | NO   | PRI | NULL    | auto_increment |
    | name  | varchar(12) | YES  |     | NULL    |                |
    | yeold | int(11)     | YES  |     | NULL    |                |
    +-------+-------------+------+-----+---------+----------------+

    【6】设置外键约束(FOREIGN KEY,FK)>>>

             如果表A的主关键字是表B中的字段,则该字段称为表B的外键,表A称为主表,表B称为从表。外键是用来实现参照完整性的,不同的外键约束方式
    将可以使两张表紧密的结合起来,特别是修改或者删除的级联操作将使得日常的维护工作更加轻松。外键主要用来保证数据的完整性和一致性.
             两个表必须是InnoDB表,MyISAM表暂时不支持外键
             外键列必须建立了索引,MySQL 4.1.2以后的版本在建立外键时会自动创建索引,但如果在较早的版本则需要显示建立;
             外键关系的两个表的列必须是数据类型相似,也就是可以相互转换类型的列,比如int和tinyint可以,而int和char则不可以;


    CREATE TABLE +table_name (
    属性名 数据类型,
    属性名 数据类型,
    .....
    CONSTRAINT 外键约束名 FOREIGN KEY (属性名1)
      REFERENCES 表名 (属性名2)
  • 相关阅读:
    Qt 打印机支持模块
    手动启动jenkins
    Ubuntu下安装Apache2, php5 mysql
    Ubuntu 使用apt-get时提示错误:无法获得锁 /var/lib/dpkg/lock
    scp 在不同机器上传文件
    python 正则表达式 贪婪模式的简介和匹配时的几种模式
    python指定pypi的源地址 镜像地址
    python三元运算符
    python导入上级目录中的模块
    linux下使用vim替换文件中的^M换行符
  • 原文地址:https://www.cnblogs.com/python-wen/p/9643474.html
Copyright © 2011-2022 走看看