• Mysql入门-表操作


    本系列内容基本上是从一本叫做《Mysql入门很简单》上面整理的。如果侵犯了你的权益,告诉我,我删掉!

    一、创建表

    语法:
    CREATE TABLE表名(属性名 数据类型[完整性约束条件],
    属性名 数据类型[完整性约束条件],
    ...
    属性名 数据类型
    )

    常见约束条件
    PRIMARY KEY 标识该属性为该表的主键,可以唯一的标识对应的元组
    FOREIGN KEY 标识该属性为该表的外键,是与之联系的某表的主键
    NOT NULL 标识该属性不能为空
    UNIQUE 标识该属性的值是唯一的
    AUTO_INCREMENT 标识该属性设置默认值
    DEFAULT 标识该属性的值自动增加,这是MySOL的SOL语句的特色

    例如:
    CREATE TABLE student(stu_id INT PRIMARY KEY AUTO_INCREMENT, ---主键
    stu_name VARCHAR(20) NOT NULL,
    stu_sex BOOLEAN
    )

    CREATE TABLE student2(id INT UNIQUE,
    stu_id INT,
    stu_grade FLOAT DEFAULT 0,
    PRIMARY KEY(stu_id,course_id) ---多字段组合主键
    );

    CREATE TABLE student3(id INT PRIMARY KEY,
    stu_id INT,
    course_id INT,
    CONSTRAINT cfk FOREIGN KEY (stu_id,course_id)
    REFERENCES student2(stu_id,course_id)
    );

    注释:
    student2是父表,student3是子表。子表的数据依赖于父表。外键在子表上。


    二、查看表结构
    1、DESCRIBE student;
    2、DESC student;
    3、SHOW CREATE TABLE student;
    4、SHOW CREATE TABLE studentG; <=> SHOW CREATE TABLE studentg;

    三、修改表
    1、修改表名
    ALTER TABLE 旧表名 RENAME [TO] 新表名; -- ALTER TABLE user RENAME student;
    2、修改表结构
    ALTER TABLE 表名 MODIFY 属性名 数据类型; -- ALTER TABLE student MODIFY name VARCHAR(30);
    3、修改表字段名
    ALTER TABLE 表名 CHANGE 旧属性名 新属性名 新数据类型; -- ALTER TABLE student CHANGE name stu_name VARCHAR(30);
    4、修改表字段名和属性
    ALTER TABLE student CHANGE sex stu_sex INT(2); -- 应遵循新属性包含旧属性原则
    5、增加字段
    ALTER TABLE 表名 ADD 属性名1 数据类型 [完整性约束条件] [FIRST|AFTER属性名2];
    --------
    ALTER TABLE student ADD phone CHAR(20); --默认最后一列
    ALTER TABLE student ADD age INT(4) NOT NULL;
    ALTER TABLE student ADD s_no INT(8) PRIMARY KEY FIRST; --设置为主键,并且指定了放在第一列
    ALTER TABLE student ADD address VARCHAR(30) NOT NULL AFTER phone; --新插入列放在phone后面
    6、删除字段
    ALTER TABLE 表名 DROP 属性名; ------ ALTER TABLE student DROP address;
    7、编辑列
    ALTER TABLE 表名 MODIFY 属性名1 数据类型 FIRST|AFTER 属性名2;
    ------------
    ALTER TABLE student MODIFY s_no INT(8) FIRST;
    ALTER TABLE student MODIFY address VARCHAR(30) NOT NULL AFTER phone;
    8、更改表的存储引擎
    ALTER TABLE 表名 ENGINE=存储引擎名; -- ALTER TABLE student ENGINE=MyISAM;
    9、删除外键
    ALTER TABLE 表名 DROP FOREIGN KEY 外键别名;
    -------
    ALTER TABLE student3 DROP FOREIGN cfk;
    10、删除表
    DROP TABLE 表名; -- DROP TABLE student3;

  • 相关阅读:
    Python笔记17(Django之路由系统)
    Python笔记16(Django介绍与安装)
    Python笔记16(Web框架本质)
    序列的区间操作
    并查集(入门)
    (补题 Uva 3027)Corporative Network
    (补题 cf 1167C)News Distribution
    (补题 CF 1013B 模拟)And
    (补题 CF 1234C)Pipes
    (补题 POJ 1679 次小生成树)The Unique MST
  • 原文地址:https://www.cnblogs.com/smallfishy/p/13513917.html
Copyright © 2020-2023  润新知