数据库
文章平均质量分 92
数据库原理,SQL语句,
去北极避暑~
这个作者很懒,什么都没留下…
展开
-
MyBatis中#和$符的区别,sql注入问题,动态sql语句
#{}和${}都是MyBatis提供的sql参数替换。区别是:#{}是预编译处理,${}是字符串直接替换。#{}可以防止SQL注入,${}存在SQL注入的风险,例如 “' or 1='1”虽然存在SQL注入风险,但也有自己的适用场景,比如排序功能,表名,字段名等作为参数传入时。#{}模糊查询要搭配使用mysql内置的拼接函数concat,安全性高。模糊查询虽然${}可以完成,但是存在SQL注入,不安全。原创 2024-02-06 18:40:13 · 1559 阅读 · 2 评论 -
Mysql 索引 、事务、隔离级别
一个有效的解决方法是:另外在弄一台机器,在这台机器上部署mysql服务器,并且创建一张同样的表,然后创建好索引,最后再将原服务器上的数据导入到新的mysql服务器上。而红黑树虽然既可以精确查询,又可以范围查询,还可以模糊匹配(但是%开头的这种模糊查询不支持),缺点是红黑树是一个二叉树,树的高度可能会很高,会导致IO操作频繁。索引是一种为了加快数据库查询(操作)速度而引入的一种手段,需要占用额外的磁盘空间,我们之前所学的主键,唯一键,外键都是自带了索引的。此时隔离性是最高的,效率是最低的,数据是最准确的。原创 2024-01-19 17:18:45 · 947 阅读 · 0 评论 -
【数据库】-- 最常用的SQL语句和关键字
-1.1创建数据库--1.2判断数据库是否已经存在,若存在则不创建,不存在创建,语句更为严谨--2.查看所有创建的数据库--3.查看指定数据库的·定义信息--4删除数据库。原创 2023-06-07 23:00:18 · 2179 阅读 · 13 评论 -
【Mysql】一篇带你了解数据定义,操作和查询语言
having的作用是过滤数据,where也是过滤数据。那么他们有什么区别呢?1.having与where的区别(1).执行时机不同。where是分组之前进行过滤,不满足where条件,不参与分组;而having是分组之后对结果进行过滤。(2).判断条件不同。where不能对聚合函数进行判断,而having可以。即where并不参与分组后的过滤数据。而是在分组前执行,且必须在分组前执行。2.使用要求 (1) 如果过滤条件中使用了聚合函数,则必须使用having来原创 2023-06-30 21:08:04 · 2577 阅读 · 64 评论