MySQL基础(一:数据库基础语句)

举报
坠入极夜的夏 发表于 2024/04/27 23:24:07 2024/04/27
【摘要】 MySQL基础(一:数据库基础语句)

MySQL基础

MySQL自带工具 >> 链接MySQL+发送指令 >> MySQL解析指令

MySQL与平常认知区别:

MySQL 认知
数据库 文件夹
数据表 文件(Excel文件)

MySQL指令基础:

create创建数据库

create database <name>;
------
create database <name> default charset utf8 collate utf8_general_ci(utf8_bin);

# utf8_general_ci: 这是一种不区分大小写且对accent(重音符号)也不敏感的校对规则
# utf8_bin:与前者反之

create创建数据表

craete table <表name> (
	列名称 类型 auto_increment primary key,#auto_increament从1开始自增||primary key设置为主键,不允许为空,不允许重复default 0,# 插入数据时,若不写此项数据,则默认为0
	列名称 类型 default withoutname,# 插入数据时,若不写此项数据,则默认为 withoutname
	列名称 类型 null	# 允许为空||not null不允许为空
)default charset=utf8;
-------------------------------
create table `user` (
    `userid` int auto_increment primary key,
    `username` varchar(16) default 'withoutname',
    `password` varchar(20) not null
) engine=innodb default charset=utf8;

show查看已有数据库:

show databases;

show查看数据表

show tables;

drop删除数据库

drop database <库name>;

drop删除数据表

drop table <name>;

use进入数据库

use <库name>;

insert把数据插入数据表

insert into users(`username`,`password`) values('admin','admin');
-----------------------
# 批量插入 
insert into users(`username`,`password`) values('admin','admin'),('user1','user1');

select查看数据内容

select * form <table>;# 查看所有数据
-----------------------
select `<userID>` from <table>;# 查看单独数据

基于select * from的基础SQL注入
select * from `users` where `password`='无(这里随便写)'or'1'='1';
# 该SQL语句会绕过密码验证,让查询语句总是返回users表中的所有记录
# SQL语句中的password设置为'1',即使`password`='1'为假,但后面的'1'='1'始终为真,在or的作用下,语句会忽略password是否正确,从而绕过,实现未授权登录
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。