网络安全从入门到精通 (第二章-2) 后端基础SQL—MySQL数据库简介及SQL语法
本文内容:
- 什么是数据库
- 常见数据库
- 数据库的基本知识
- 基本SQL语法
1,什么是数据库?
数据库就是将大量数据保存起来,通过计算机加工,可以高效访问的数据聚合。
数据库就是长期存储在计算机内,有组织、可共享的集合。
2,常见的数据库:
Oracle Database 甲骨文公司
SQL Server 微软公司
DB2 IBM公司
POSTGRESQL 开源
MySQL 开源
Access 微软公司
注意:虽然数据库各种各样,但是数据库语句之间具有相同之处。
3,数据库基本知识:
数据库结构:
服务器端:接收并处理其他程序发出的请求的程序(软件),或安装此类程序的设备(计算机)。
客户端:向服务器发送请求的程序(软件),或安装此类程序的设备(计算机)。
库:就是一堆表的数据集合。
表(table):类似于Excle,由行和列组成的二维表。
字段:表的列(垂直方向),可以理解为表的表头。
记录:表的行(水平方向),可以理解为表的数据。
注意:关系型数据库必须以行为单位进行数据读写。
SQL语句种类:
SQL语句:是由关键字,表名、列名组合成的一条语句。
三种SQL语句种类:
DDL(数据定义语言):创建、修改、删除数据库以及数据库中的表等对象。
CREATE:创建数据库和表等对象。
DROP:删除数据库和表等对象。
ALTER:修改数据库和表等对象。
DML(数据操作语言):查询或修改表中的记录。
SELECT:查询表中的数据。
INSERT:向表中插入数据。
UPDATE:修改表中的数据。
DELETE:删除表中的数据。
DCL(数据控制语言):确认或取消对数据库中的数据变更的执行操作,以及对用户的操作数据库中对象权限的设定。
4,基本SQL语法:
注意:所有SQL语句结尾一定要用英文分号;
数据库操作:
[新建数据库]: CREATE DATABASE 库名;
[查看所有数据库]: SHOW DATABASES;
[查询当前库名]: SELECT DATABASE();
[删除数据库]: DROP DATABASE 库名;
[使用数据库]: USE 库名;
数据表操作:
[新建表]: CREATE TABLE 表名(字段名,字段类型);
[查看所有数据表]: SHOW TABLES;
[删除表]: DROP TABLE 表名;
[查看表的类型]: DESC 表名;
[删除表的字段]: ALTER TABLE 表名 DROP 字段名;
[添加表的字段]: ALTER TABLE 表名 ADD 字段名 字段类型;
[修改表的字段]: ALTER TABLE 表名 CHANGE 字段名 修改字段名,修改字段类型;
补充:
字段具有属性:
主键:PRIMARY KEY [不能为空且唯一]
自增长:AUTO_INCREMENT
非空:NOT NULL
设置编码类型:CHARSET=UTF8
数据类型:
字符串类型
整数类型
浮点类型
数据操作:
[插入数据]:INSERT INTO 表名 values('数据');
[插入数据]:INSERT INTO 表名 (字段名) values (‘数据’);
[查询数据]:SELECT * FROM 表名 查询一个表里的所有字段的数据。
[查询数据]:SELECT 字段 FROM 表名 查询一个表里某字段的所有数据。
[修改数据]:UPDATE 表名 SET 字段=‘记录’
[修改数据]:UPDATE 表名 SET 字段=‘记录’ WHERE 字段=某条件(某记录)。
[删除数据]:DELETE FROM 表名 WHERE 字段=‘记录’。
补充:
具有and、or的使用。
Mysql字符串是可以接受16进制的。
SQ注入,注入数据不准使用单引号时,可以使用十六进制转换替代,用0x表示。
注意:十六进制只能代表数据,不能代表其他东西,比如执行语句等。
SQL语句本身不区分大小写,但是数据区分大小写。
采用关键字大写,表名和列名首字母大写的格式。
单词使用英文空格或换行符隔开。
常书写的方式:
字符串、日期:用单引号括起来''
数字:直接书写,不用加单引号。
与君共勉:
生活给你压力,
你就还它奇迹;
人生给你考验,
你就还它经验。
没有什么能难倒自己,
只要你愿意坚持,
愿意付出,
成功就会眷顾你。
网络安全从入门到精通 (第二章-2) 后端基础SQL—MySQL数据库简介及SQL语法的更多相关文章
- 网络安全从入门到精通 (第二章-6) 后端基础PHP—表单验证
本文内容: 什么是表单? 如何创建一个表单: 接收并验证: PHP和数据库交互 1,什么事表单? 表单在网页中主要负责数据采集. 表单由三部分组成: 表单标签:这里面包含了处理表单数据所用动态脚本的U ...
- 网络安全从入门到精通(第二章-3)后端基础SQL— MySQL高级查询与子查询
本文内容: MySQL的基础查询语句 链接查询 联合查询 子查询 渗透测试常用函数 1,MySQL基础查询语句: select * from 表 order by ASC/DESC; ASC:从小到 ...
- 网络安全从入门到精通 ( 第二章-5) 后端基础PHP—简介及基本函数-下
本文内容: 循环语句 PHP获取表单信息 PHP操作Mysql语句 语法SQL注入 1,循环语句: for循环: 语法:for($x=0,$x<10;$x++){执行语句;} 注意:$x++,先 ...
- 网络安全从入门到精通 (第二章-4) 后端基础PHP—简介及基本函数-上
本文内容 什么是PHP PHP的基础语法 运算符 条件分支语句 1,什么是PHP? PHP(超文本预处理器)是一种通用开源语言,(是动态语言中的一种,动态语言还有ASP,ASPX,JSP). PHP语 ...
- 网络安全从入门到精通 (第二章-1) Web安全前端基础
本文内容: 前端是什么? 前端代码 HTML CSS JS !!!醋成酒的小墨,促成就的小墨,小墨促成就,!!! 1,前端是什么? 网站一般用两部分组成,前端负责展示,后端负责处理请求. 2,前端代码 ...
- ABP从入门到精通(2):aspnet-zero-core 使用MySql数据库
关于 asp.net zero core 项目的启动及说明,请观看我前面的博文 http://www.cnblogs.com/stulzq/p/7237153.html 本操作对于ABP默认项目应该也 ...
- SaltStack 入门到精通第二篇:Salt-master配置文件详解
SaltStack 入门到精通第二篇:Salt-master配置文件详解 转自(coocla):http://blog.coocla.org/301.html 原本想要重新翻译salt-mas ...
- ArcGIS for Desktop入门教程_第二章_Desktop简介 - ArcGIS知乎-新一代ArcGIS问答社区
原文:ArcGIS for Desktop入门教程_第二章_Desktop简介 - ArcGIS知乎-新一代ArcGIS问答社区 1 Desktop简介 1.1 ArcGIS for Desktop ...
- 第二章:python基础,数据类型
"""第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...
随机推荐
- MyBatis学习笔记一:MyBatis最简单的环境搭建
MyBatis的最简单环境的搭建,使用xml配置,用来理解后面的复杂配置做基础 1.环境目录树(导入mybatis-3.4.1.jar包即可,这里是为后面的环境最准备使用了web项目,如果只是做 my ...
- [CF1009F] Dominant Indices (+dsu on tree详解)
这道题用到了dsu(Disjoint Set Union) on tree,树上启发式合并. 先看了CF的官方英文题解,又看了看zwz大佬的题解,差不多理解了dsu on tree的算法. 但是时间复 ...
- Rime输入法一些设定
有鉴于谷歌搜狗拼音等不太好用,但是博主一直页没找到合心的输入法,直到遇见Rime,中州韵就是我想要的输入法.记录一下自己用的时候的修改,以备查询.注意:缩进不要弄丢,所有更改完都需要重新部署才能生效. ...
- javascript学习内容
http协议 犀牛书 MDN js单线程 let只在代码块内有效 es5只有全局作用域 const变量指向的内存地址不得改动,值不能保证不变 全局变量不加var node.js 更改连接到服务器的方式 ...
- iOS适配UIViewView/WKWebView,H5生成长图,仿微信进度条
前段时间撸代码猥琐发育的时候,设计师老王给了张截图某宝APP上一个生成长图分享的功能,正好公司有这个需求,于是在立马开始操练起来!在万能的度娘上搜集整理资料后发现很多文章介绍的方案对WKWebView ...
- 什么是SNAT
SNAT是源地址转换,其作用是将ip数据包的源地址转换成另外一个地址,可能有人觉得奇怪,好好的为什么要进行ip地址转换啊,为了弄懂这个问题,我们要看一下局域网用户上公网的原理,假设内网主机A(192. ...
- C++扬帆远航——1
问题及代码: /* * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:test.cpp * 作者:常轩 * 完成日期:2 ...
- python爬虫-纠正MD5错误认知
m = md5(".encode()) print(m.hexdigest()) # 25d55ad283aa400af464c76d713c07ad m = md5(".enco ...
- Java程序员考研失败后的面试经历,oppo、VIVO、等面经
温馨提示:有些可能会遗漏个别问题,都是最近一周的面试,有点忘了. 浪潮(一面挂) 你是网络工程的?对网络很了解? 解释一下什么是广播域 怎么划分子网 说一下CSS的几种分类器 数据库中有哪些聚集函 ...
- ArrayList集合不能使用foreach增加、删除、修改元素的原因
大家先看两段代码 第一段代码: List<String> arrayList1 = new ArrayList<String>(); arrayList1.add(" ...