MySQL基础(一:数据库基础语句)
【摘要】 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)