mysql入门级,20分钟搞定

--sql语言的四大分类--数据定义语言(DDL)

create alter drop
--数据查询语言(DQL)
select
--数据操作语言(DML)
insert update delete
--数据控制语言(DCL)
revoke grant
--数据库的相关操作--创建数据库
create database 数据库名称;
--查询指定的数据库
show create database mydb;
--查询所有数据库
show databases;
--数据库名称的相关规则:
1、数据库名称不能相同(唯一)
2、数据库名称不能超过65个字符,数据库名称的别名不能超过255个字符 。
3、数据库名称由阿拉伯数字、字母、下划线(_)美元符号($)组成,但是不能以数字开头 。
4、数据库在windows中不区分大小写,但是在linux中区分大小写 。所以推荐全部小写(方便后期移植到linux中) 。
--删除数据库
drop database 数据库名称;
drop database if exists mydb; --判断数据库是否存在,如果存在就删除,不存在就算了 。
--修改数据库的编码集
alter database 数据库名称 default character set 编码集; -- 了解
例如:
alter database gxa default character set gb2312;
--指定使用具体的数据库
use 数据库名称;
--数据表的相关操作--创建数据表
create table 表名(表字段1 表字段的类型1(字段的大小),表字段2 表字段的类型2(字段的大小));
create table t_user(uId int(3),uName varchar(10));
--查询当前数据库中有那些表
show tables;
--查询指定表创建的信息
show create table t_user;
--查询表结构
desc t_user;
describe t_user;
--删除表
drop table 表名;
--字段类型--整型
tinyint 极小整型
smallint 小整型
mediumint 中整型
int 整型 -- 最常用
bigint 大整型
--浮点型
float 单精度浮点型
double 双精度浮点型
-- 金钱常用、对精度要求比较高的 100.25 -- 最常用
decimal(M,D) 总共有M位,保留小数点D位 -- 最常用
--字符串型
char(3) 固定长度字符型
varchar(3) 可变长度字符型 -- 最常用
--日期时间型
date 日期 yyyy-MM-dd -- 最常用的
datetime 日期时间型 yyyy-MM-dd hh:mm:ss 2019-07-01 15:34:34
timestamp (支持国际化)日期时间型 yyyy-MM-dd hh:mm:ss 2019-07-01 23:34:34 --最常用
--文本型
text 文本类型
blob 它支持存储视频、音频等二进制的数据 -- 很少用
--特殊类型 -- 了解
set 存储多列数据 set('篮球','足球')
enum 存储单列数据 enum('男','女')
--创建学生表
create table t_student(
stuNo int(10) primary key auto_increment,
stuName varchar(20) not null,
stuSex char(2) default '男',
stuIdCard varchar(18) unique not null,
stuLifeMoney double(10,2),
stuStartDay date,
stuUrl text,
stuHobby varchar(50)
);
--字段约束--主键约束 -- 主键默认不能为null,而且唯一 。一张表一个主键
primary key
--自动增涨 -- 一般配合主键使用,默认从1开始
auto_increment
--唯一约束 -- 可以设置值为null,也可以一个表中多列设置唯一约束
unique
--非空约束
not null
--唯一非空约束
unique not null
--默认约束
default
--外键约束
foreign key
学生班级表sql代码示例
create table t_student(
stuNo int(10) primary key auto_increment,
stuName varchar(20) not null,
stuSex char(2) default '男',
stuIdCard varchar(18) unique not null,
stuLifeMoney double(10,2),
stuStartDay date,
stuUrl text,
stuHobby varchar(50),
classId int(10),
constraint for_class foreign key (classId) references t_class(classId)
);
create table t_class(
classId int(10) primary key auto_increment,
className varchar(20)
);
--删除外键


推荐阅读