数据类型
**数据类型:**对于填入的数据值本身进行控制,保证数据准确性
**整数:**int,有符号范围(-2147483648 ~2147483647),无符号范围(0 ~ 4294967295)
**小数:**decimal,例如:decimal(5,2) 表示共存5位数,小数占2位,整数占3位
**字符串:**varchar,范围(0~65533),例如:varchar(3) 表示最多存3个字符,中文或字母都占⼀个字符
**日期时间:**datetime,例如:‘2020-01-01 12:29:59’
约束
**约束:**对于整张数据表进行限制,确保对应字段的所有数据符合设计要求
**主键(primary key):**能唯⼀标识表中的每⼀条记录的属性组,auto_increment 代表值自动增长
**非空(not null):**此字段不允许填写空值
**唯⼀(unique):**此字段的值不允许重复
**默认值(default):**当不填写此值时会使用默认值,如果填写时以填写为准
**外键(foreign key):**⼀个表中的⼀个字段引用另⼀个表的主键
数据库操作
create-创建数据库
- 语法:
CREATE DATABASE 数据库名; #创建数据库
**📢 注意:**SQL 语句不区分大小写,CREATE 等效于 create。
- 示例:
CREATE DATABASE python;
show-查看数据库
- 语法:
SHOW CREATE DATABASE 数据库名; #查看数据库
- 示例:
SHOW CREATE DATABASE python;
SHOW DATABASE; #查看所有数据库
use-使用数据库
- 语法:
USE 数据库名; #使用数据库
- 示例:
USE python;
SELECT DATABASE(); #查看当前数据库: database() 是 SQL 的内置函数, 括号不能省略!
alter-修改数据库
- 语法:
ALTER DATABASE 数据库名
DEFAULT CHARACTER SET 编码格式
DEFAULT COLLATE 排序规则; #修改数据库的编码格式和排序规则
- 示例:
#先创建数据库
create database testpython charset = gb2312;
#修改数据库
ALTER DATABASE testpython
DEFAULT CHARACTER SET utf8mb4
DEFAULT COLLATE utf8mb4_general_ci;
drop-删除数据库
- 语法:
DROP DATABASE 数据库名; #删除数据库
- 示例:
DROP DATABASE python;
数据表操作
create-创建表
- 语法:
CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
);
- 示例:
CREATE TABLE students(
id int unsigned primary key auto_increment,#无符号,设为主键,自动增长
name varchar(20),
age int unsigned,
height decimal(5,2)
);
⭐️ 拓展小知识:
– unsigned:无符号
– primary key:主键
– auto_increment:自动增长
show-查看表
- 语法:
SHOW CREATE TABLE 表名称; #查看表信息
- 示例:
SHOW CREATE TABLE students;
desc-查看表结构
- 语法:
DESC 表名称; #查看表结构
- 示例:
DESC students;
drop-删除表
- 语法:
DROP TABLE 表名称; #删除表
- 示例:
DROP TABLE students;
DROP TABLE IF EXISTS students;
📢注意: