mysql
Henry_Jing
致力于全栈开发~~
展开
-
MySQL在可重复读隔离级别下到底有没有解决幻读问题?
MySQL 可重复读隔离级别并没有彻底解决幻读,只是很大程度上避免了幻读现象的发生。原创 2023-08-22 16:57:24 · 220 阅读 · 0 评论 -
MySql之子查询
之前在学SQL Server时没有对sql子查询有个详细的了解,现对子查询有了进一步学习,总结如下:根据第二个子语句的返回值分类,MySql一共可以分为4种(单一值、一列、一行、表(即多行多列))1、子查询返回单一值示例表的结构如下(下面都是同一张表):查询条件为:查询上课days最多的教师的姓名、性别。SQL语句即结果如下:2、子查询返回一列查询条件为:查原创 2016-11-02 16:43:23 · 354 阅读 · 0 评论 -
Mysql之用户定义变量
1、用户自定义变量:1)定义一个变量:set 变量名=变量值;注意,为了区分系统变量和字段与用户自定义变量,需要在用户变量前,增加@标识符(不加@的话,会被理解为一个字段)。示例:set @who='韩当'; select @who;2)通过select语句为变量赋值select 10,15,20 into @a,@b, @c; select @a,@b,@c;mys原创 2016-11-08 22:00:52 · 5815 阅读 · 0 评论 -
Mysql之触发器
1、监听数据进行操作:在当前的表上,设置一个对每行数据的一个监听器,监听相关相关事件。每当事件发生时,会执行一段由sql完成的一段功能代码。触发器的元素:事件,执行代码。创建触发器:create trigger名字 事件 执行代码事件:插入insert,删除delete,修改update事件的时机:执行之前和执行之后。after before由时机和事件在一起形成了六种事件原创 2016-11-06 22:54:58 · 312 阅读 · 0 评论 -
Mysql之事务
1、关于事务的一些知识点一组sql语句操作单元,组内所有sql语句完成一个业务。如果整组成功,意味着全部sql都实现。如果其中任何一个失败。意味着整个操作都失败。失败,意味着整个过程都是没有意义的。应该是数据库回到操作前的初始状态。上面的特性,就是事务。如何处理?1)、失败后,可以回到开始位置2)、没有成功之前,别的用户(进程,会话)是不能看到操作内的数据修改的。思路:就是原创 2016-11-06 19:47:09 · 309 阅读 · 0 评论 -
Mysql之视图
1、视图可以隐藏表的相关字段(哪些我们不想让别人看到的)创建视图成功后,视图就是一个存在于数据库中的虚拟表了注:视图的创建一般是用来显示指定的数据,很少涉及对原数据的修改,当然也可以修改。2、向视图中插入数据向视图中插入数据也会影响原表的数据3、视图本身没有数据,只是通过执行相应的select语句完成获得相应的数据。视图本质不能提原创 2016-11-06 16:14:04 · 845 阅读 · 0 评论 -
Mysql之备份还原
方案1:适用于mysiam表:直接将tbl_name.frm,Tbl_name.myd,Tbl_name.myi三个文件(这三个文件位于data目录下,每个数据库对应一个文件夹,C:\Documents and Settings\All Users\MySQL\MySQL Server 5.6\data\test test文件夹对应相应的数据库),保存,备份即可。需要的时候,直接解压到移原创 2016-11-05 15:13:02 · 283 阅读 · 0 评论 -
Mysql之增加数据
1、插入数据时,如果主键冲突会如何?默认有主键约束,不会插入成功。但是可以在主键冲突时,改成执行更新操作。insert into teacher_class(id,t_name,gender) VALUES (9,'jing','female') on DUPLICATE key update t_name='jing',gender='female';2、插入的数据源原创 2016-11-04 22:16:27 · 588 阅读 · 0 评论 -
Mysql之删除更新
1、两个表的关键删除两个表如下:删除语句:语句分析:delete from one,two using one join two on one.public_field=two.public_field where one_id=2; one,two 需要在哪些数据表内,进行删除 using 使用的哪种连接条件原创 2016-11-05 13:09:26 · 373 阅读 · 0 评论 -
Mysql之outfile
1、outfile是将检索到的数据,保存到服务器的文件内:格式:select * into outfile "文件地址"示例:mysql> select * into outfile 'f:/mysql/test/one' from teacher_class;2、文件是自动创建的。生成的文件格式:默认的,采用行来区分记录,而采用tab制表符,来区分字段。3、而为了满足原创 2016-11-04 20:05:14 · 11996 阅读 · 2 评论 -
两道经典的表与表之间连接的题目
题目一:已知如下department表,根据下面要求写出查询语句:1、获得所有的顶级部门2、获得教学部内所有的子部门答1:答2:解法一(subquery):解法二(join):注:显示全部的原创 2016-11-04 14:33:25 · 447 阅读 · 0 评论 -
Mysql之自然连接
两张表:自然连接通过MySql自己的判断完成连接过程,不需要指定连接条件。MySql会使用表内的,相同的字段,作为连接条件。自然连接分为内外之分。内:natural join外:左外natural left join、右外natural right join注:select * from one natural join two;sele原创 2016-11-03 20:49:59 · 26283 阅读 · 5 评论 -
Mysql之using连接
using要求,负责连接的两个实体之间的字段名称一致。建议是,在两个表中,有同名字段时,使用using;而在通用条件时,使用on。在数据过滤时(不是指的连接过滤),使用where。两张表为:using的使用:on的使用:原创 2016-11-03 19:52:58 · 521 阅读 · 0 评论