MySql学习
weixin_44646187
这个作者很懒,什么都没留下…
展开
-
SQL注入
SQL注入(英语:SQL injection),是发生于应用程序与数据库层的安全漏洞。简而言之,是在输入的字符串之中注入SQL指令,在设计不良的程序当中忽略了字符检查,那么这些注入进去的恶意指令就会被数据库服务器误认为是正常的SQL指令而运行,因此遭到破坏或是入侵。详细解释可参看此博文:https://segmentfault.com/a/1190000007520556...转载 2021-03-24 17:06:41 · 194 阅读 · 0 评论 -
JDBC 解耦——提取配置类与工具类
在使用JDBC 时,有时需要多次使用相同的代码,造成代码冗余,产生强耦合,因此可以使用提取相同的代码,将其写成配置文件和工具类进行解耦。书写配置类1.右键文件夹,选择NEW–>FILE,然后命名2.在配置文件书写信息driver = com.mysql.jdbc.Driverurl = jdbc:mysql://localhost:3306/jdbcstudy?useUnicode=true&charcaterEncoding=utf8&useSSL=trueusern原创 2021-03-24 11:49:42 · 197 阅读 · 0 评论 -
JDBC
JDBC:Java Data Base Connectivity(Java数据库连接),JDBC是Java与数据库之间连接的桥梁。实例:创建测试数据库-- 创建数据库CREATE DATABASE jdbcStudy CHARACTER SET utf8 COLLATE utf8_general_ci;-- 切换到jdbcStudy数据库USE jdbcStudy;-- 建表CREATE TABLE users( id INT PRIMARY KEY, NAME VARCHAR(原创 2021-03-23 20:04:20 · 104 阅读 · 1 评论 -
数据库三大范式
第一范式(1NF)原子性:保证每一列不可再分第二范式(2NF)前提:满足第一范式每张表值描述一件事第三方式(3NF)前提:满足第一范式和第二范式第三范式需要确保数据表中的每一列数据都和主键直接相关,而不能间接相关小结:第一范式限制列,第二范式限制表...原创 2021-03-23 17:44:16 · 94 阅读 · 0 评论 -
Mysql备份
Mysql数据库备份方式直接拷贝物理文件在Sqlyog这种可视化工具中手动导出使用命令行导出直接拷贝物理文件在Sqlyog这种可视化工具中手动导出3.使用命令行导出# 导出数据表# mysqldump -h 主机 -u 用户名 -p 密码 数据库 表名1 表名2 表名3 > 物理磁盘位置/文件名mysqldump -hlocalhost -uroot -p123456 school student grade>D:/b.sql# 导出数据库# my原创 2021-03-23 17:39:56 · 96 阅读 · 1 评论 -
SQL用户管理
SQL命令操作用户表:mysql.user本质:对这张表进行增删改查-- 创建用户-- create user 用户名 identified by 密码create user zhangsan identified by '123456'-- 修改当前用户密码-- set password = password(新密码)set password = password('123456')-- 修改指定用户密码-- set password for 指定用户名 = password.原创 2021-03-23 14:49:30 · 192 阅读 · 0 评论 -
索引原则
创建索引语句create index 索引名 on 表名(字段名)-- 例子create index id_user_name on user(`namwe`)索引不是越多越好。不要对经常变动的数据加索引。小数据量的表不需要加索引。索引一般加在用来查询的字段上索引的数据结构Hash 类型的索引Btree:InnoDB的数据结构...原创 2021-03-23 13:43:20 · 62 阅读 · 0 评论 -
索引
定义:索引(index)是帮助mysql高校获取数据的数据结构索引的分类主键索引(PRIMARY KEY)唯一的标识,主键的值不可重复,只能有一个列作为主键唯一索引(UNIQUE KEY)避免重复的列出现,唯一索引的值可以重复,多个列都可以标识成唯一索引常规索引(KEY / INDEX)默认的,通过index,key关键字来设置全文索引(FULLText)在特定数据库引擎下才有,MyISAM快速定位数据注意:在一个表中,主键索引只能有一个,唯一索引.原创 2021-03-19 14:52:20 · 82 阅读 · 0 评论 -
事务案例测试
思路流程[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DX70duxW-1616134302298)(C:\Users\cheng zhimin\AppData\Roaming\Typora\typora-user-images\image-20210319134216077.png)]语法结构- ================= 事务 ===================-- mysql时默认开始事务提交的set autocommit = 0 -- 关闭自原创 2021-03-19 14:12:00 · 153 阅读 · 0 评论 -
事务ACID理解
事务ACID理解参考博文:https://blog.csdn.net/dengjili/article/details/82468576原创 2021-03-19 13:14:48 · 93 阅读 · 0 评论 -
select小结
select 完整语法select [all | distinct]{ * | table.* [[ table.filed1 ][ as alias1][, table.filed2[ as alias2]][ ... ]]}from table_name [ as table_alias] [ left | right | inner join table_name2] -- 联合查询 [ where ... ] --查询结果满足的条件 [ group by ... ] -- 指定结原创 2021-03-19 13:00:02 · 168 阅读 · 0 评论 -
数据库级别的MD5级别加密
MD5用于增强算法的复杂度和不可逆性每一个具体的值经过MD5加密后只有唯一对应的值测试-- 建表CREATE TABLE `testMD5`( `id` INT(4) NOT NULL, `name` VARCHAR(40) NOT NULL, `pwd` VARCHAR(10) NOT NULL, PRIMARY KEY(`id`))ENGINE INNODB DEFAULT CHARSET=utf8-- 插入数据INSERT INTO `testMD5` VALUES(101.原创 2021-03-19 11:25:20 · 228 阅读 · 0 评论 -
进行聚合查询时出现的问题及解决方法
使用mysql5.7 执行以下代码时,系统会报错SELECT r.sub_name,AVG(score) AS 平均分,MAX(score),MIN(score)FROM result rINNER JOIN `subject` subON r.sub_id = sub.sub_idGROUP BY sub.sub_id报错信息为错误代码: 1055Expression #1 of SELECT list is not in GROUP BY clause and contains non原创 2021-03-19 10:38:23 · 398 阅读 · 0 评论 -
聚合函数及分组过滤
本篇应用的数据表与以下连接的数据表相同:https://blog.csdn.net/weixin_44646187/article/details/114989048函数名称描述count()计数sum()求和avg()平均值max()最大值min()最小值……SELECT r.sub_name,AVG(score),MAX(score),MIN(score)FROM result rINNER JOIN `subject` su.原创 2021-03-19 10:21:02 · 218 阅读 · 0 评论 -
DQL查询数据(重点)(二)
1.1 分页和排序分页语句:升序 :order by 排序字段 ASC降序:order by 排序字段 DESC分页语句:limit 起始位置 显示的数据条数实例-- 创建score表CREATE TABLE score( `id` INT(4) NOT NULL COMMENT '学生编号', `name` VARCHAR(20) NOT NULL COMMENT '姓名', `stu_score` DECIMAL(10) NOT NULL COMMENT '分数',原创 2021-03-18 19:57:40 · 107 阅读 · 0 评论 -
DQL查询数据(重点)(一)
1.1DQL(Data Query Language):数据查询语言所有的查询都用它 Select简单的查询,复杂的查询它都能做数据库中最核心的语言,最重要的语句使用频率最高的语句1.2查询指定字段SELECT 字段1,字段2,... FROM 表名SELECT * FROM `student` --查询所有数据SELECT `id`,`name` FROM `student` --查询指定字段SELECT `id` AS 学号,`name` AS 姓名 FROM `studen原创 2021-03-18 00:10:28 · 102 阅读 · 0 评论 -
DML语言
数据库的意义:数据存储,数据管理DML语言:数据操作语言InsertUpdateDelete插入命令:INSERT语法:插入一条记录:insert into 表名([字段名1],[字段名2],[字段名3]) values (‘值1’,‘值2’,‘值3’)插入多条记录:insert into 表名([字段名1],[字段名2],[字段名3]) values (‘值1’,‘值2’,‘值3’),(‘值1’,‘值2’,‘值3’),(‘值1’,‘值2’,‘值3’),(‘值1’,‘值2’,原创 2021-03-16 17:39:07 · 388 阅读 · 0 评论 -
#数据表的修改与删除
修改–修改数据表名:ALTER TABLE 旧表名 RENAME AS 新表名ALTER TABLE teacher RENAME AS teacher1–增加表字段: ALTER TABLE 表名 ADD 字段名 列属性ALTER TABLE teacher1 ADD NAME INT(11)–修改表的字段(包括字段重命名和修改约束)--ALTER TABLE 表名 MODIFY 字段名 列属性[]ALTER TABLE teacher MODIFY age VARCHAR(11.原创 2021-03-14 15:44:33 · 117 阅读 · 0 评论 -
数据表的类型
关于数据库引擎/*INNODB 默认使用MYISAM 早些年使用*/MYISAM与INNODB比较MYISAMINNODB事务支持不支持支持数据行锁定不支持支持外键约束不支持支持全文索引支持不支持表空间大小较小较大,约为MYISAM的两倍常规使用操作节约空间,速度较快安全性高,支持事务的处理,支持多表多用户操作MySql引擎在物理文件上的区别在物理空间存在的位置,所有的数据库文件都存在data目原创 2021-03-12 20:49:02 · 129 阅读 · 0 评论 -
创建数据库表
建表语法格式CREATE TABLE [IF NOT EXISTS] '表名'( '字段名' 列类型 [属性] [索引] [注释], '字段名' 列类型 [属性] [索引] [注释], ...... '字段名' 列类型 [属性] [索引] [注释],)[表类型][字符集设置][注释]实例--目标:创建一个school数据库--创建学生表(列,字段),使用SQL创建--学号int,登陆密码varchar(),姓名,性别varchar(2),出生日期(data原创 2021-03-12 20:09:37 · 323 阅读 · 0 评论 -
数据库的字段属性
Unsigned:无符号整数声明该列取值不能为负数zerofill:0是填充的不足的位数使用0来填充自增:通常理解为自增,自动在上一条记录的基础上 +1(默认)通常用来设计唯一的主键,必须是整数类型可以自定义设计主键自增的起始值和步长非空 NULL not all 假设设置为not all,如果不给他赋值,就会报错NULL,如果不填写值,默认就是null默认:设置默认的值例如sex,默认值为男,如果不指定该列的值,则默认使用sex值为男...原创 2021-03-12 19:06:44 · 192 阅读 · 0 评论 -
数据库列的数据类型
数值tinyint 十分小的数据 1个字节smallint 较小的数据 2个字节mediumint 中等大小的数据 3个字节int 标准的整数 4个字节 这是常用的,相当于java.原创 2021-03-12 18:10:11 · 293 阅读 · 0 评论 -
操作数据库
操作数据库>操作数据库中的表>操作表中的数据mysql关键字不区分大小写1.创建数据库CREATE DATABASE [IF NOT EXISTS] westos;2.删除数据库DROP DATABASE [IF EXISTS] westos;3.使用数据库-- tab键的上面,如果使用的表明或者字段是一个特殊字符,就需要带``USE `school`;4.查看所有数据库SHOW DATABASE; --查看所有的数据库学习思路对照sqlyog的历史记原创 2021-03-12 17:19:12 · 102 阅读 · 0 评论 -
在doc界面连接数据库
命令行连接!mysql -uroot -p123456 --连接数据库update mysql.user set authentication_string=password('123456') where user='root' and Host = 'localhost'; --修改用户密码flush privileges; --刷新权限-------------------------------------------show database;原创 2021-03-12 16:48:53 · 327 阅读 · 0 评论 -
使用SQLyog新建第一个数据库
1.右键root@127.0.0.1,选择新建数据库,然后输入对应信息3.新建一张数据表,双击数据库school,右键选中"表",选择创建表4.在表中输入对应信息,然后单击保存5.查看表,在表中右键student,选择打开表,进行对应的操作。...原创 2021-03-12 10:35:35 · 4706 阅读 · 0 评论 -
MySql可视化图形工具——SQLyog的安装
1.下载SQLyog压缩包和注册码sqlyog百度云链接(永久有效):http://pan.baidu.com/s/1i5j4GG9 密码:t906注册码链接:http://pan.baidu.com/s/1dFMm1B7 密码:e35u2.将安装包解压到安装目录下,我这里的目录是D:\soft\Environment3.单击sqlyog_x64—>x64—>SQLyog-12.0.9-0.x64.exe,进行安装4.选择语言,然后单击ok5.单击“下一步”6.勾选接受协议原创 2021-03-12 09:55:47 · 613 阅读 · 0 评论 -
MySql安装问题小结
一、执行下面命令后报错mysqld --initialize-insecure --user=mysql报错内容为:mysqld: Can’t create directory ’xxxx’ (ErrorCode 2 - No such file or directory)这个问题与自己创建的my.ini文件有关,只需将my.ini配置文件里的路径盘符后面的单斜杠改为双斜杠即可。修改前:[mysqld]port = 3306basedir=D:\software\mysql-5.7.27原创 2021-03-11 19:38:31 · 279 阅读 · 0 评论 -
MySql安装
1.安装包下载地址,不建议通过.exe的方式安装,因为会对注册表进行操作,难以卸载。https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.19-winx64.zip2.下载后将压缩包解压。3.将文件名mysql-5.7.19-win64改为mysql-5.7.19。4.在D盘新建一个Environment文件夹,将解压后的MySql文件夹剪切至此,我的mysql-5.7.19存放路径是D:\soft\Environment\mysql-5.7原创 2021-03-11 19:05:46 · 1889 阅读 · 0 评论 -
MySql学习
MySql学习1.什么是数据库数据库(DB,DataBase)作用:存储数据,管理数据2.数据库分类关系型数据库:MySql,Oracle,SqlServer,db2,SQLlite通过表和表之间,行和列之间的关系进行数据库的存储非关系型数据库:Redis,MongDB非关系型数据库,以对象形式存储数据,通过对象自身的属性来进行操作...原创 2021-03-11 16:32:42 · 53 阅读 · 0 评论