kyowjw01 发表于 2017-8-12 16:19:17

第二章 Web开发基础知识(2)

本帖最后由 kyowjw01 于 2017-8-12 16:22 编辑

SQL概述
1.数据库服务软件和SQL语言的关系
a.SQL语言是一门ANSI的标准计算机语言,它用来访问和操作数据库。
b.常见的数据库软件有SQL server、MySQL和Oracle等。
c.创建数据库的步骤:安装数据库软件 → 创建数据库 → 创建数据表 → 插入数据。
2.SQL语句对大小写不敏感。
3.数据表


搭建一个数据库相关操作
软件:MySQL
服务接口:端口/本地
用户:root
1.创建数据库 CREATE DATABASE websecurity;
2.查看数据库 SHOW databases;
3.切换数据库 USE websecurity;
(删除数据库 DROP DATABASE websecurity;)
4.创建数据表CREATE TABLE student(
    id int(4) not null primary key auto_increment,
    Name char(20) not null,
    Score char(10) not null,
    height char(10) not null,
);
5.查看数据表SHOW tables;
6.插入数据表INSERT INTO student(name,sex,addr) VALUES('Ben',100,174);
INSERT INTO student(name,sex,addr) VALUES('Mary',99,165);
INSERT INTO student(name,sex,addr) VALUES('Danny',97,185);
7.查询数据表SELECT * FROM student;
8.更新数据UPDATE student SET Name = 'ALICE' WHERE id = 1;
(删除数据DELETE FROM student WHERE name = 'ALICE';)
(删除数据表DROP TABLE student;)

其他方式:导入数据库 source C:\\test.sql;


SQL语法
where句子
select 你要的信息 from 数据表(或多个) where 满足的条件(条件判断)
order by句子
select 你要的信息 from 数据表(或多个) order by 字段 ASC/DESC
UNION句子——代表合并数据的意思
select 你要的信息 from 数据表1 union select 你要的信息 from 数据表2
Tips: 如果要显示两张表中重复的数据,则用union all
select name from student where sex='Male'
union all
select name from student where sex='Male';

MySQL的注释
a.#...   b.-- ... c./*...*/
Tips:在SQL注射时,我们可以用SQL的注释能绕过注入。

常用的内置函数(可以用于SQL注入漏洞获取信息)
database()——当前数据库名称
使用方法:select database();
current_user——当前用户名称
使用方法:select current_user;
load_file()——读取文件数据            
使用方法:select load_file('C:\\test.txt');                不知道为何本人老是读出的是NULL。。。
version()——数据库版本
into+outfile——写入文件
页: [1]
查看完整版本: 第二章 Web开发基础知识(2)