创建数据库
CREATE DATABASE database_name;
使用数据库:
USE database_name;
删除数据库:
DROP DATABASE database_name;
数据类型:
mysql支持的数据类型主要分为4类,即字符串类型、数值类型、日期和时间类型,以及布尔类型。
1、字符串类型:
常用的字符类型是CHAR、VARCHAR类型。
CHAR:描述定长的字符串,说明格式为CHAR(L),其中L为字符串长度,取值范围为(1~255)。比L大的值将被截断,比L小的值将用空格填补。
VARCHAR:描述变长的字符串,说明格式为VARCHAR(L),其中L为字符串长度,取值范围为1~255.比L的值将被截断,比L小的值不会用空格填补
2、数值类型:
常用的数值类型是INT、DECIMAL类型
INT:用于表示整数,存储长度默认为4个字节。说明格式为INT
DECIMAL: 可以用来表示所有的数值数据,说明格式为DECIMAL( p , s ),其中p表示数据的最大长度,s表示数值数据中小数点后的数字位数,p、s在定义时可以省略,例如DECIMAL(5)、DECIMAL等。
3、日期和时间类型:
常用的日期和时间类型是DATE、TIME、DATETIME类型。
DATE:用来保护固定长度的日期数据,说明格式为DATE
TIME:用来保护固定长度的时间数据,说明格式为TIME
DATETIME: 用来保存固定长度的日期时间数据,说明格式为DATETIME。日期值格式为‘YYYY-MM-DD’;时间值格式为‘HH:MM:SS’;日期时间值格式为'YYYY-MM-DD HH:MM:SS'
4、布尔类型
布尔类型为BOOLEAN类型,它只有两个值————TRUE和FALSE,即真值和假值。
创建表:
每个 MySQL 表都应该有一个主键,用于唯一标识该表中的每一行数据。一个表的主键不仅需要唯一,而且还需要不为空,这样才能被用作其他表中的外键。
在 MySQL 中,使用 AUTO_INCREMENT
关键字可以创建一个自增字段,用于分配唯一的 ID 值,而使用 PRIMARY KEY
关键字可以将该字段设置为表的主键。这样,就可以创建一个自增主键,每次插入一行新数据时,该主键将自动递增,确保每次插入的数据有唯一的标识符,并且满足作为关系型数据库的基本特性。
创建表并为列设置约束和默认值:
例如,创建一个名为 products
的表,包含 id
(自增主键,在默认情况下,自增类型字段的值从1开始,步长为1)、name
、price
和 stock
列,并为 price
设置一个默认值为 0,stock
设置一个默认值为 100,并为 name
设置一个唯一约束
唯一约束是一种数据库约束,确保在列中的所有值都是唯一的,不允许重复。在MySQL中,使用UNIQUE关键字或在创建表时指定UNIQUE约束来实现。唯一约束通常用于确保表中的特定列没有重复的数值,例如,可以在用户名列上应用唯一约束,以确保每个用户都有一个唯一的用户名。
利用子查询来创建表
从已建立的表中提取部分记录来创建新表。例如:
根据dept表生成新表。
CREATE TABLE newtable
SELECT * FROM dept
利用SELECT语句来查询表中数据。
SELECT * FROM dept_c
修改表的结构
使用 ALTER TABLE 语句,这允许你添加,修改或删除表的列,以及应用约束等。
例如,要向名为 products的表添加一个新列description。
使用 DESC
命令查看表的结构
修改一个表中已有的列
举例来说,如果你想将表 students
中的 age
列的数据类型从 INT
修改为 VARCHAR(3)
,你可以执行以下 SQL 语句:
从一个表中删除一列
举例来说,如果你想从表 students
中删除 age
列,你可以执行以下 SQL 语句:
COLUMN可以去掉的
ALTER TABLE students
DROP age;
截断表
是指删除表中所有的行,但保留表的结构。这在需要清空表数据但保留表结构的情况下很有用。
删除表
将会持续更新~