MySQL基础增删改

MySQL

SQL(Strucutured Query Language) - 结构化查询语言

SQL是不区分大小写的编程语言

  • DDL(数据定义语言)- 创建删除修改各种对象

    create / drop / alter

  • DML(数据操作语言) - 插入、删除、修改数据

    insert / delete / update

  • DQL(数据查询语言) - 检索(查询)数据

    select

  • DCL(数据控制语言) - 授予或者召回用户权限

    grant / revoke

命令启动MySQL服务

net start 数据库名称

例如:net start mysql80

连接服务器(登录)

  • 语法:MySQL -u 用户名 -h 主机地址 -p
    • 例如:连接本地:mysql -u tt -h 127.0.0.1 -p
      Enter password: 手动输入密码

更改用户密码(需登录)

  • 语法:alter user ‘root’@‘localhost’ identified by ‘新密码’

断开服务器

  • 语法:quit

Ⅰ数据库操作

显示本地数据库

show databases;

创建数据库

语法:create database 数据库名 default charset 字符集(常用utf-8);

常见一个数据库名school,设置默认字符集
create database school default charset utf8;

删除数据库

语法:drop database 数据库名

如果有数据库就删除
drop database if exists school

切换到指定数据库

use 数据库名;

打开学生数据库
use school

在连接时打开数据库
MySQL -u 用户名 -h 主机地址 -p school

查看数据库下所有数据表

语法:show tables;

创建数据表

1-数据类型
数据类型:
	- 整数
		- int / integer  -->  -2^31 ~ 2^31-1
		- int unsigned  -->  0 ~ 2^32-1
		- bigint  -->  -2^63 ~ 2^63-1
		- bigint unsigned  -->  2^64-1
		- tinyint  -->  -128 ~ 127
		- tinyint unsigned  -->  0 ~ 255
		- smallint	
	- 小数
		- float / double
		- decimal  -->  decimal(10,2)-小数共10位,小数后占2位		
	- 字符串
		- char / verchar
		- longtext  -->  longtext(二进制大对象) --> 放资源路径(url)		
	- 时间日期
		- date / time / datetime 
		- timestamp时间戳 --> 1970-1-1 00:00:00	
	- 布尔型
		- boolean  -->  tinyint(1) --> 0/1
	-枚举型
		- enum  -->  'M' / 'N'
2-创建表
语法:
create table 表名(
	字段1 数据类型 not null auto_increment,
	字段2 数据类型 not null(设置非空约束),
	字段3 数据类型 default '值',
	primary key(字段1)(设置主索引)
    unique(字段名)(唯一索引)
    check(约束条件)
)engine=innodb auto_increment=11;
default 值 -- 设置字段默认值
auto_increment=11  -- 这句代码意思是指定开始值从11开始
auto_increment  -- 意思是数字自动增长,必须是主键
例子
create table stu(
	stu_id integer not null auto_increment comment '学号',
	stu_name varchar(10) not null,
	stu_set char(1) default 'M' not null,
	primary key(stu_id)
    check(stu_set='M' OR stu_set='F') -- 设置约束性别只能是M或者F
);
命令输入:desc stu(表名)  -  显示表结构
comment '学号'  --  添加注释

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rCwJJAVP-1629982374534)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20210825145830342.png)]

3-显示表结构
命令:desc 表名
desc - describe的简写
简写desc区分:
排序order by中:descend - 降序
显示表结构中:describe - 描述
4-删除表
drop 表名
5-修改表字段
5.1添加字段列
alter table 表名 add column `字段名` varchar(100);
5.2删除字段列
alter table 表名 drop column `字段名`;
5.3修改字段列
  • 只修改字段属性(modify)
-- 修改某字段的类型属性
alter table 表名 modify column `字段名` 类型;
  • 字段名和属性都修改(change)
-- 修改字段名和其他类型属性
alter table 表名 change column 字段名 新字段名 类型;
5.4添加约束
-- 普通约束
alter table 表名 add constraint 约束名 check (约束条件);
-- 添加主索引约束
alter table 表名 add constraint primary(字段名);
-- 添加唯一索引约束
alter table 表名 add constraint unique(字段名);
-- 添加外键约束
alter table 表名 add constraint 约束名 foreign key(外键字段名) references 外表(外表主键字段名);
设置约束 --  学生的性别字段值只能是M或者F
alter table tb_student add constraint `ck_student_gender` 
check (`stu_gender`='M' or `stu_gender`='F');
5.5删除约束
alter table 表名 drop constraint 约束名;
alter table 表名 drop index 约束名;
alter table 表名 drop primary key 约束名;
...
6-修改记录行
6.1添加记录(insert)
--values后可批量添加--
insert into 表名 (字段名1,字段名2...) values (值1, 值2...),(值1, 值2...);
6.2修改记录(update)
--修改满足条件的记录的字段值--
update 表名 set 字段名=值 where 条件
6.3删除记录(delete)
-- 删除满足条件的记录--
delete from 表名 where 条件

-- 删除表的所有记录--
truncate table 表名;

值2…),(值1, 值2…);


##### 6.2修改记录(update)

```mysql
--修改满足条件的记录的字段值--
update 表名 set 字段名=值 where 条件
6.3删除记录(delete)
-- 删除满足条件的记录--
delete from 表名 where 条件

-- 删除表的所有记录--
truncate table 表名;
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蜡笔丶没了小新

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值