SQL 基础知识

一.SQL靶场搭建

(一)phpstudy

1.下载小皮phpstudy

从软件管理中安装需要的web,数据库,php版本

2.github官网下载sqli-labs环境,复制到phpstudy根目录下面解压缩

由于sqli-labs需要很多php5.x的版本,最好从更多版本中下载一个5.x的php版本

并重命名为sql 

3.启动apache,MySQL

并以管理员身份打开命令提示符,ipconfig命令找到ip,web打开本地回环地址

 

同时将sql文件夹里的sql connections db文件里的密码一栏改为小皮里的密码(默认用户名和密码均为root)

记事簿里修改后保存 

网址后面加\sql

点击less1,进入后网址后加?id=1 成功登录,之后可以进入靶场正常操作

(二).phpMyAdmin

1.小皮内搭建phpmyadmin

 注意将版本改为7.3.4,不然不兼容

2.登录

~#mysql -u root -p#输入密码登录数据库

可以从命令行登录,也可直接从管理按钮处进入

二.SQL基本代码

1.数据库

show databases;  #查看数据库
create database 数据库名称(employees) charset utf8;  #创建数据库employees并选择字符集
drop database 数据库名称(employees);  #删除数据库employees
use employees;  #选择进入数据库employees

2.数据表 

CREATE TABLE employee 
(id int ,
 name varchar(40),
 sex char (4),
 birthday date ,
 job varchar(100)
 );
#新建数据表employee
 

 

select * from employee; 
#查看数据列表

执行后页面如下

show full columns from employee;  
#查看数据表employee信息

drop table employe;  
#删除数据表

rename table employee to user; 
#修改数据表名称为user

INSERT into user
(
    id,name,sex,birthday,job)
VALUES
(
    1,'ctfstu','male','1999-07-13','it');
#插入内容

 

alter table user add salary decimal(8,2);
#增加一列内容

 

update user set salary=5000;
#修改所有工资为5000

update user set name='benben' where id=1;
#修改id=1的行name (ctfstu)为benben

update user set name ='benben2',salary=3000 where id=1;
#修改id=1的行name为benben2,工资为3000

alter table user drop salary;
#删除列

delete from user where job='it';
#删除行

delete from user;
#删除表

3.sql查询

基础查询词语:select , from , where

基本查询语句:

select * from user where id=1;
#select+列名(*代表所有)+from+表名+where+条件语句;
select * from user where id in ('');
#从user表格查询所有包含id=''的列
select * from user where id=(select id from user where username=('admin') );
#子查询 优先执行()内查询语句

查询参数指令:union , group by , order by , limit , and , or

select id from user union select email_id from emails;
#查询并合并数据显示
select * from user where id=6union select * from emails where id=6;
#ERROR:注意联合查询前后表格列数必须相等
select * from user where id=6 union select * ,3 from emails where id=6;
#如果此时user两列,emails三列,3为填充剂
select username from users group by username;

 

 

常用函数:group_concat() , database() , version()

  • 17
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值