查看数据表有四种方法:

①  SHOW COLUMNS FROM tbl_name [FROM db_name];

②SHOW COLUMNS FROM 表名;

③DESC 表名;

④DESCRIBE  表名;

建议用第三种方便记忆

添加表中新字段

ALTER TABLE 表名 add 字段名 数据类型(数据范围);

修改表中新字段

ALTER TABLE tbl_name CHANGE 旧列名 新列名 新数据类型;
--修改crm_pms 表中address字段,改为add字段,查看该表结构
ALTER TABLE crm_pms CHANGE address add varchar(30);
DESC crm_pms;

删除一个字段

ALTER TABLE 表名 DROP 列名;
--删除crm_pms表中的add字段
ALTER TABLE crm_pms DROP add;
DESC crm_pms;

删除数据表

DROP TABLE [IF EXISTS] 表名;
--删除crm_pms表
DROP TABLE crm_pms;

约束

按功能进行划分

主键约束(PRIMARY KEY)

  • 不允许表中有重复的记录
  • 不允许表中有NULL记录
  • 每个表中只能存在一个主键约束
  • 创建主键约束后,系统将自动创建主键索引

语法:

#创建数据表时添加表级别的主键约束
CREATE TABLE 表名(
		列名1 数据类型(数据范围) PRIMARY KEY,
		列名2 数据类型(数据范围) PRIMARY KEY
);
CREATE TABLE 表名(
		列名1 数据类型(数据范围),
		列名2 数据类型(数据范围),
		PRIMARY KEY(列名1,列名2)
);

修改表时侯添加主键约束

ALTER TABLE 表名 ADD PRIMARY KEY(列名1,列名2);

删除主键约束

ALTER TABLE 表名 DROP PRIMARY KEY;

唯一约束(UNIMARY KEY)

  • 不允许表中有重复的记录
  • 允许表中有NULL记录
  • 创建唯一约束后,系统将自动创建唯一索引

语法:

#创建数据表时添加列级别的主键约束,列级别只能一个,表级别可以多个
CREATE TABLE 表名(
		列名1 数据类型(数据范围) PRIMARY KEY,
		列名2 数据类型(数据范围) UNIQUE KEY,
    	列名2 数据类型(数据范围) UNIQUE KEY
);
#创建数据表时添加表级别的主键约束
CREATE TABLE 表名(
		列名1 数据类型(数据范围),
		列名2 数据类型(数据范围),
		UNIQUE KEY(列名1,列名2)
);
多列之间是逗号,一行之间是空格

修改表时添加唯一约束

ALTER TABLE 表名 ADD UNIQUE KEY(列名1,列名2);

删除唯一约束

ALTER TABLE 表名 DROP INDEX 约束名称;

查看某张表中全部的索引名称

SHOW KEYS FROM 表名;

外键约束(FOREIGN KEY)

语法:父表/主表:没有外键的表

子表:存在外键的表,被外键所修饰的列的列值,必须参照与主表中主键所在的列的列值

CREATE TABLE 表名1(
		列名1 数据类型(数据范围) PRIMARY KEY,
		列名2 数据类型(数据范围) UNIQUE KEY,
    	列名3 数据类型(数据范围) DEFAULT 参数值,
    	列名3 数据类型(数据范围) NOT NULL
);
CREATE TABLE 表名2(
		列名1 数据类型(数据范围) PRIMARY KEY,
		列名2 数据类型(数据范围) UNIQUE KEY,
    	列名3 数据类型(数据范围) DEFAULT 参数值,
    	列名3 数据类型(数据范围) NOT NULL
    	FOREIGN KEY(列名2a) REFERENCES 表名1(列表2)
);
  • 非空约束(NOT NULL)

语法:用来修饰一列或多列的值,当插入数据的时候,被非空约束修饰的列。该列的值不能为空

CREATE TABLE 表名(
		列名1 数据类型(数据范围) PRIMARY KEY,
		列名2 数据类型(数据范围) UNIQUE KEY,
    	列名3 数据类型(数据范围) DEFAULT 参数值,
    	列名3 数据类型(数据范围) NOT NULL
);
  • 默认值约束(DEFAULT)

语法:

CREATE TABLE 表名(
		列名1 数据类型(数据范围) PRIMARY KEY,
		列名2 数据类型(数据范围) UNIQUE KEY,
    	列名3 数据类型(数据范围) DEFAULT 参数值
);






阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: mysql