🍁博主简介
🏅云计算领域优质创作者
🏅华为云开发者社区专家博主
🏅阿里云开发者社区专家博主
💊交流社区:运维交流社区 欢迎大家的加入!
相关文章
文章名文章地址【MYSQL初级篇】入门学习【增删改查-库表数据】https://liucy.blog.csdn.net/article/details/128396592【MYSQL中级篇】数据库数据查询学习https://liucy.blog.csdn.net/article/details/128717294Column 1Column 2centered 文本居中right-aligned 文本居右
MYSQL入门学习目录
前言
没有安装mysql的,大家可参考【 Centos7安装Mysql5.7(超详细版)】、【【云原生】Docker之创建并进入mysql容器】 两种方式任选其一来安装;
SQL语句
- DDL 数据定义语言 create drop alter
- DML 数据操纵语言 update delete insert
- DQL 数据查询语言 select
- DCL 数据控制语言 grant revoke
数据库
查看数据库:
show databases;
创建数据库:
create database 库名;
#创建数据库并设置为utf8格式
create database cs character set utf8 ;
删除数据库:
drop database 库名;
表
进入某数据库
use 库名;
查看某数据库中所有的表:
show tables;
创建表:
创建学生表:id(学号)自增,主键;姓名;性别;年龄;生日;地址;邮件;手机号;成绩。
- ZEROFILL int(3)的时候要是00几的话可以在int(3)后面加一个zerofill
- PRIMARY KEY 主键
- AUTO_INCREMENT 自增
- default 0 设置默认值
- comment 备注
create table student (id int(3) ZEROFILL PRIMARY KEY AUTO_INCREMENT comment'学号',name varchar(255) not null comment'姓名',sex char(4) not null comment'性别',age int not null comment'年龄',birthday varchar(255) comment'生日',address varchar(255) not null comment'住址',email varchar(50) comment'邮箱',iphone varchar(255) comment'手机号',score int not null comment'成绩')comment='学生表';
删除表:
drop tables 表名;
查看表结构:
#视觉上会好很多(推荐)
desc 表名;#查看表结构的构成语句详细
show create table 表名;#精简查看表结构
show create table 表名\G;
修改表结构:
添加字段及类型:
alter table 表名 add 字段 数据类型;[first | after 字段]
first是在第一行加,after是在最后一行加,也可以指定字段在哪个字段后面加;默认追加;
#默认追加
alter table student add hobby varchar(255);#添加一个字段在第一行
alter table student add nvpy varchar(255) first;#添加一个字段在iphone字段后面
alter table student add npy varchar(255) after iphone;
删除字段及类型:
alter table 表名 drop 字段名;
#删除nvpy字段
alter table student drop nvpy;
修改字段及类型:
单个字段类型修改:
alter table 表名 modify 字段 数据类型;[first | after 字段]
#修改npy的字段类型为varchar(20)
alter table student modify npy varchar(20);#修改npy的字段类型为varchar(256);并放到第一行;
alter table student modify npy varchar(256) first;#修改npy的字段类型为varchar(50);并放到name的下一行;
alter table student modify npy varchar(50) after name;
多个字段类型修改:
alter table 表名 change 字段 新字段 数据类型;[first | after 字段]
#修改npy字段,改名npy为nanpy;字段类型改为int类型;
alter table student change npy nanpy int;#修改nanpy字段,改名为nanfu;字段类型改为char(4);并且放到第一行;
alter table student change nanpy nanfu char(4) first;#修改nanfu字段,改名为npy;字段类型改为varchar(255);并且放到iphone后一行;
alter table student change nanfu npy varchar(225) after iphone;
修改表名:
alter table 原表名 rename 新表名;
alter table student rename xuesheng;#查看表名
show tables;
数据
增:
#新增一组数据
insert into 表名 values (值1,值2..);#新增多组数据
insert into 表名 values (值1,值2..), (值1,值2..);#新增指定多组数据
insert into 表名(字段1,字段2,...) values (值1,值2..);
#新增一组数据
insert into student values (null,'张三','男',15,7.12,'北京市朝阳区某小区1号楼1单元1011','[email protected]',16222817282,120);#新增多组数据(5组)
insert into student values (null,'李四','男',18,9.02,'北京市朝阳区某小区1号楼1单元1012','[email protected]',1214323282,121),(null,'王五','女',18,2.9,'北京市朝阳区某小区1号楼1单元1010','[email protected]',12234332296,100),(null,'老六','女',19,1.19,'北京市朝阳区某小区1号楼1单元101','[email protected]',13246780092,124.5),(null,'小七','女',17,4.24,'北京市朝阳区某小区1号楼1单元109','[email protected]',15278906648,123),(null,'老八','男',16,6.07,'北京市朝阳区某小区1号楼1单元105','[email protected]',18267814238,123.5);#查询student表中所有数据select * from student;
新增数据报错:
1366 - Incorrect string value: '\xE7\x94\xB7' for column 'sex' at row 1
这个报错的意思的你的字符集不对,修改一下字符集为utf8即可,如果用的navicat可以直接找库右击修改,如果在linux中可以执行:
alter database cs character set utf8;
修改库的编码格式;
how variables like '%char%';
可通过查看编码格式;修改完,重启mysql,再次试一下就好了;
删:
#删除表中所有数据;(慎用)
delete from 表名;#删除某表中的指定行;
delete from 表名 where 列=值;
#删除id为004的人(这里注意,因为我们前面的两位是默认的两个0,所以只要删除4就行,4==004)
delete from student where id=4;#删除手机号为”13246780092“的人
delete from student where iphone="13246780092";#查询student表中所有数据select * from student;
注:完成之后会将数据重新添加上
附加:
删除表主键id需要重0开始的,可执行truncate table student;
注:此操作会让数据全部清除,请谨慎使用;
改:
代表列、代表值比如主键、手机号;具有唯一性;
update 表名 set 要修改的列=值 where 代表列=代表值;
#修改id=1,“张三”的住址为“北京市朝阳区某小区1号楼1单元106”
update student setaddress='北京市朝阳区某小区1号楼1单元106' where id=1;#修改id=6,“王五”的性别为“男”,地址为“北京市朝阳区某小区1号楼1单元104”
update student setsex='男',address='北京市朝阳区某小区1号楼1单元104' where id=6;#查询student表中所有数据select * from student;
查:
select * from 表名;(查看所有字段的内容)
select 字段 from 表名;
#查询student表中所有数据select * from student;#查询student表中的姓名和成绩数据select name,score from student;select name as 姓名,score as 成绩 from student;
版权归原作者 A-刘晨阳 所有, 如有侵权,请联系我们删除。