10、SQL注入——数据库基础

文章目录

一、数据库概述

  • 数据库(database):存储在磁盘、磁带、光盘或其他外存介质上、按一定结构组织在一起的相关数据的集合。
  • 数据库管理系统(database management system):一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库。
  • 数据库系统(database system):通常由软件、数据库(DB)和数据库管理员组成。软件主要包括操作系统、各种宿主语言、实用程序以及数据库管理系统。
  • 数据库由数据库管理系统统一管理,数据的插入、修改和检索均要通过数据库管理系统进行。数据库管理员负责创建、监控和维护整个数据库,是数据能被任何有权的人有效使用。

二、数据库分类

  • 关系型数据库
    • 关系型数据库模型是把负责的数据结构归结为简单的二元关系(即二维表格形式)。通过SQL结构化查询语句存储数据,保持数据一致性,遵循ACID理论。
    • 关系型数据库的典型产品:MySQL、MSSQL、Oracle、PostgreSQL、IBM DB2、Access等。
  • 非关系型数据库
    • 非关系型数据库也被称为NOSQL数据库,NOSQL的产生并不是要彻底否认关系型数据库,而是作为传统关系型数据库的一个有效补充。NOSQL数据库在特定的场景下可以发挥出难以想象的高性能和高效率。
    • 非关系型数据库的典型产品:Memcached、Redis、MongoDB等。

Mysql数据库连接方法

  1. 命令行连接:mysql -h x.x.x.x -u <username> -p
  2. PHP脚本连接:mysql_connect(host,username,password,dbname,port,sockert)
  3. 第三方软件连接

三、识别数据库

(1)默认端口号

bash 复制代码
Oracle: 1521
Mysql: 3306
SQL server: 1433
PostgreSQL: 5432
mongoDB: 27017
Redis: 6379
MemcacheDB: 11211

(2)报错信息

(3)各数据库与后端语言的搭配

bash 复制代码
ASP和.NET: MSSQL
PHP: Mysql、PostgreSQL
Java: Oracle、MySQL

四、SQL语法

4.1 SQL基本语法

python 复制代码
	create //创建新的表、视图或其他数据库中的对象
	alter //修改现存数据库对象
	drop //删除表、视图或其他数据库中的对象

	select //从一张或多张表中检索特定的数据
	insert //创建一条新纪录
	update //修改记录
	delete //删除记录

	grant //赋予用户特权
	revoke //收回赋予用户的特权

4.2 高级操作

(1)order by

(2)limit

命令:select * from table limit m,n,其中m是指记录开始的index,从0开始;n是指从第m+1条开始,取n条。

  • 两个参数:第一个是偏移量,第二个是数目。
    select * from employee limit 3,7; // 返回4-10行
  • 一个参数:
    select * from employee limit 3; // 返回前三行

(3)union

相关推荐
马克Markorg6 分钟前
常见的向量数据库和具有向量数据库能力的数据库
数据库
Coder_Boy_2 小时前
技术让开发更轻松的底层矛盾
java·大数据·数据库·人工智能·深度学习
helloworldandy2 小时前
使用Pandas进行数据分析:从数据清洗到可视化
jvm·数据库·python
数据知道4 小时前
PostgreSQL 故障排查:如何找出数据库中最耗时的 SQL 语句
数据库·sql·postgresql
qq_12498707534 小时前
基于SSM的动物保护系统的设计与实现(源码+论文+部署+安装)
java·数据库·spring boot·毕业设计·ssm·计算机毕业设计
枷锁—sha4 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
Coder_Boy_4 小时前
基于SpringAI的在线考试系统-考试系统开发流程案例
java·数据库·人工智能·spring boot·后端
Gain_chance4 小时前
35-学习笔记尚硅谷数仓搭建-DWS层最近n日汇总表及历史至今汇总表建表语句
数据库·数据仓库·hive·笔记·学习
此生只爱蛋5 小时前
【Redis】主从复制
数据库·redis
马猴烧酒.5 小时前
【面试八股|JAVA多线程】JAVA多线程常考面试题详解
java·服务器·数据库