一、先创建一个数据库,然后使用数据库(数据库举例命名为student)
1.创建数据库
CREATE DATABASE student;
2.使用数据库
use student;
二、创建一个存储信息的数据表(命名为test)
CREATE TABLE test
(
name VARCHAR(25),
age INT,
height FLOAT
);
- 设置单字段主键
以上面的test表为例,设置name字段为主键
CREATE TABLE test
(
name VARCHAR(25) PRIMARY KEY,
age INT,
height FLOAT
);
- 另外一种设置主键的方法
以上面的数据表为例,将name设置为主键
CREATE TABLE test
(
name VARCHAR(25),
age INT,
height FLOAT,
PRIMARY KEY(name)
);
- 多字段联合主键
以上面的数据表为例,将name 、id设置为主键
CREATE TABLE test
(
name VARCHAR(25),
age INT,
height FLOAT,
PRIMARY KEY(name,id)
);
- 外键约束
a. 外键的约束需要一个主表和附表
b.首先建立一个主表,例:命名为 A
c.创建一个附表,命名为B
CREATE TABLE A
(
school VARCHAR(25) ,
classnumb INT PRIMARY KEY
);
CREATE TABLE B
(
name VARCHAR(25),
age INT,
height FLOAT,
classnumb INT PRIMARY KEY,
constraint fk_A_B foreign key (classnumb) references A(classnumb)
);
- 非空约束
当创建表时指定的表的字段不能为空,可以使用非空约束,如果添加数据没有指定值,系统会报错。
在字段后面加上代码“not null”,例:
CREATE TABLE test
(
name VARCHAR(25) NOT NULL,
);
- 唯一性约束
唯一性约束要求该列唯一,允许为空,但只能出现一个空值,唯一性约束可以确保一列或者几列不出现重复值
在字段后面加上代码“unique”,例:
CREATE TABLE test
(
name VARCHAR(25) UNIQUEL,
);
- 默认约束
在创建表时指定某一列默认值,在插入一条新数据时,可以不为该字段赋值,系统会给该字段赋默认值
在字段后面加上代码“default 默认值”,例:
CREATE TABLE test
(
money INT DEDAULT 100,
);
- 属性值自动增加
每次插入新纪录,希望由系统生成自动增长主键值,可以添加“AUTO_INCREMENT”关键字来实现,添加该关键字
的列必须是数字主键列
CREATE TABLE test
(
age INT AUTO_INCREMENT
);
三、查看数据表结构
查看字段、字段类型、主键、默认值
desc 表名;
describe 表名;
显示创建时的详细语句
show create table 表名;
四、修改数据表
- 修改表名
ALTER TABLE 旧表名 RENAME TO 新表名;
- 修改字段名
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 新数据类型;
- 修改字段的数据类型
ALTER TABLE 表名 MODIFY 字段名 新数据类型;
- 添加字段
(默认添加在已有字段的后面)
ALTER TABLE 表名 ADD 字段名 新数据类型;
- 删除字段
ALTER TABLE 表名 DROP 字段名;
- 修改字段的排序位置
添加到所有字段前面
ALTER TABLE 表名 ADD 字段名 新数据类型 FIRST;
添加到某个字段的后面
ALTER TABLE 表名 ADD 字段名 新数据类型 AFTER 字段名;
- 更改表的数据引擎
ALTER TABLE 表名 ENGINE=存储引擎(InnoDB、MyISAM、..);
- 添加和删除表的约束
添加主键约束
ALTER TABLE 表名 ADD CONSTRAINT 主键约束名 PRIMARY KEY 字段名;
添加外键约束
ALTER TABLE 表名 ADD CONSTRAINT 外键约束名 FOREIGN KEY 字段名 REFERENCES 主表表名(字段名);
添加唯一约束
ALTER TABLE 表名 ADD CONSTRAINT 约束名 UNIQUE(字段名);
添加非空约束
ALTER TABLE 表名 MODIFY 字段名 数据类型 NOT NULL;
删除外键约束
ALTER TABLE 表名 DROP FOREIGN KEY 外键约束名;
五、删除表
DROP TABLE 表名;