MySQL(二)表的操作

六大约束:主键约束、外键约束、非空约束、唯一约束、默认约束、自动增加

   1.not null 非空
    2.default :默认值,用于保证该字段的默认值 ; 比如年龄:1900-10-10
    3.primary key : 主键,用于保证该字段的值具有唯一性,并且非空
    4.unique : 唯一约束,保证该字段的值可以为空,具有唯一性
    5.AUTO_INCREMENT: 自动递增
    6.foreign key : 外键约束; 用于限制两个表的关系, 用于保证该字段的值必须来自于主表的关联列的值;
        在从表中添加外键约束,用于引用主表中的某列的值;

一、创建表

语法:使用use 数据库名;先指明数据库,再create table 表名
  create table 表名(
    字段名1 类型[(宽度) 约束条件],
    字段名2 类型[(宽度) 约束条件],
    字段名3 类型[(宽度) 约束条件]
  )[存储引擎 字符集];


  ==在同一张表中,字段名是不能相同
  ==宽度和约束条件可选
  ==字段名和类型是必须的

create   table   t1(

            id  int(10) primary key,

            name char(10) not null,

            age  int(10),            

)

注:也可以使用:create table 数据库名.表名(……)

二、查询表

  (1)、查询所有表:

    show tables 表名;

  (2)、查询部分表

    前缀为ex的表  show tables like 'ex_%';(查出以ex_开头的表)

  (3)、查询表结构

    describe 表名;(可简写为 desc 表名;)

三、修改表

  (1)、修改表名

    rename table 老的表名 to 新的表名;   // rename 可以对多个表进行改名

    alter table 旧表名 rename 新表名;

  (2)、夸数据库改名

    rename table 老的表名 to 其他数据库.新的表名

  (3)、如果想在一个已经建好的表中添加一列,可以用以下代码:

    alter table 表名 add column 列名 varchar(20) not null;
    alter table 表名 add  (chinese int(10),english int(10));(添加多个字段)

 (4)、改变表的字段

    alter table t1 modify gender  char(11);          -----只能改属性不能改名字
    alter table t1 change gender  age int(12);      -----既可以改名也可改属性(把gender改为age)

    alter table t1 change gender  gender int(12) first;         -------把gender方在第一列

    alter table t1 change gender  gender int(12) after id;    -------把gender方在id后面

  (5)、删除字段

    alter  table  表名  drop 列;   -----删除一列

四、删除表

    drop table 表名;

猜你喜欢

转载自www.cnblogs.com/soft2018/p/10194797.html