-
SQLSERVER 语句交错引发的死锁问题案例详解
目录一:背景1.讲故事二:死锁简析1.一个测试案例2.寻找死锁源头3.寻找解决方案三:总结一:背景1.讲故事相信大家在使用SQLSERVER的过程中经常会遇到阻塞和死锁,尤其是死锁,比如下面的输出:(1rowaffected)Msg1205,Level13,State51,Line5Transaction(ProcessID62)wasdeadlockedonlockresourceswithanotherprocessandhasbeenchosenasthedeadlockvictim.Rerunthetransaction.要解决死锁问题,个人感觉需要非常熟知各种隔离级别,尤其是可提交读模式下的CURD加解锁过程,这一篇我们就来好好聊一聊。二:死锁简析1.一个测试案例开启两个会话65和66,分别使用如下查询...
数据库操作教程 2023-02-25 05:43:07 -
SQL Server临时表的正确删除方式(sql server 删除临时表)
目录SQLServer临时表的正确删除方式1、错误的删除操作:2、正确的删除方式:补充:SQL临时表的使用示例删除临时表SQLServer临时表的正确删除方式临时表与一般的表不同,它是保存到tempDb表中。临时表的表名与你所建的表名也不一样,因为他要为不同人的相同操作创建不同的临时表...
数据库操作教程 2023-02-25 05:43:03 -
SQLSERVER 临时表和表变量的区别汇总
目录一:背景1.讲故事二:到底有什么区别1.前置思考2.如何验证都存储在tempdb中?3.不同点在哪里三:总结一:背景1.讲故事今天和大家聊一套面试中经常被问到的高频题,对,就是临时表和表变量这俩玩意,如果有朋友在面试中回答的不好,可以尝试看下这篇能不能帮你成功迈过。二:到底有什么区别1.前置思考不管是临时表还是表变量都带了表这个词,既然提到了表,按推理自然会落到某一个数据库中,如果真在一个数据库中,那自然就有它的存储文件.mdf和.ldf,那是不是如我推理的那样呢?查阅MSDN的官方文档可以发现,临时表和表变量确实都会使用tempdb这个临时存储数据库,而且tempdb也有自己的mdf,ndf,ldf文件,截图如下:有了这个大思想之后,接下来就可以进行验证了...
数据库操作教程 2023-02-25 05:42:55 -
SQLSERVER 的 truncate 和 delete 区别解析
目录一:背景1.讲故事二:区别详解1.思考2.观察delete的事务日志。3.观察truncate的事务日志...
数据库操作教程 2023-02-25 05:42:39 -
关于SQL表中drop table和delete table的区别
问题:使用阿里云的maxcompute产品发现有中间表的产生,需要删除。删表是一个比较危险的操作,这次给了个机会就想尝试下,记得在mysql表中有两种操作,drop与delete,但是在maxcompute产品中尝试时,该产品只支持drop操作...
数据库操作教程 2023-02-25 05:42:20 -
SQL 嵌套查询的具体使用
目录插入数据 select子查询(外语句先执行,内语句后执行)总结嵌套查询又称子查询,有select子查询,where子查询,from子查询,exists子查询。插入数据 #创建表及插入记录CREATETABLEclass(cidint(11)NOTNULLAUTO_INCREMENT,captionvarchar(32)NOTNULL,PRIMARYKEY(cid))ENGINE=InnoDBCHARSET=utf8;INSERTINTOclassVALUES(1,'三年二班'),(2,'三年三班'),(3,'一年二班'),(4,'二年九班');CREATETABLEcourse(cidint(11)NOTNULLAUTO_INCREMENT,cnamevarchar(32)NOTNULL,teacher_idint(11)NOTNULL,PRIMARYKEY(cid),KEYfk_course_teacher(teacher_id),CONSTRAINTfk_course_teacherFOREIGNKEY(teacher_id)REFERENCES...
数据库操作教程 2023-02-25 05:42:07 -
SQLServer 清理日志的实现
本文以sql2012为例第一步,(查询日志中文件名和大小):USE数据库名GOSELECTfile_id,name,size,*FROMsys.database_files;查询结果如上图所示,可以看到其中name字段为日志文件名,size是日志大小,接下来就可以执行清理日志操作。值得注意的是,清理日志必须先将数据库转成简单模式,清理后再将数据库置为完全模式,具体的语句如下: 第二步,清理:USE[master]GOALTERDATABASE数据库名SETRECOVERYSIMPLEWITHNO_WAITGOALTERDATABASE数据库名SETRECOVERYSIMPLE--简单模式GOUSE数据库名GODBCCSHRINKFILE(N'文件名',11,TRUNCATEONLY)GOUSE[master]GOALTERDATABASE数据库名SETRECOVERYFULLWITHNO_WAITGOALTERDATABASE数据库名SETRECOVERYFULL--还原为完全模式GO其中文件名为第一步中查询出的name字段对应的内容...
数据库操作教程 2023-02-25 05:41:45 -
sqlserver 合并列数据的实现
sqlserver递归查询树型结构某节点的所有上级节点,并且把这些所有上级节点多行拼接为一行,即合并列数据witheps_root(pk_eps,pk_parent,eps_code,eps_name)as(SELECTpk_eps,pk_parent,eps_code,eps_nameFROMpm_epswhereenablestate=2andpk_eps='1001A11000000003P62E'unionallSELECTe.pk_eps,e...
数据库操作教程 2023-02-25 05:41:39 -
sql IDENTITY_INSERT对标识列的作用和使用
一般情况下,当数据表中,莫一列被设置成了标识列之后,是无法向标识列中手动的去插入标识列的显示值。但是,可以通过设置SETIDENTITY_INSERT属性来实现对标识列中显示值的手动插入...
数据库操作教程 2023-02-25 05:41:12 -
SQL server分页的四种方法思路详解(最全面教程)
目录方法一:三重循环思路方法二:利用max(主键)方法三:利用row_number关键字第四种方法:offset/fetchnext(2012版本及以上才有)总结 这篇博客讲的是SQLserver的分页方法,用的SQLserver2012版本。下面都用pageIndex表示页数,pageSize表示一页包含的记录...
数据库操作教程 2023-02-25 05:41:03 -
Oracle中sql语句如何执行日志查询
目录Oraclesql语句执行日志查询Oracle查询某天sql执行记录Oraclesql语句执行日志查询在Oracle数据中,我们经常编写sql语句,有时我们会编写一些特别长的sql语句,而有一些意外导致sql消失,从而出现长时间写的sql,但是需要重新辨析,我们可以使用查询语句通过时间定位sql。从而找到;selectFIRST_LOAD_TIME,LENGTH(SQL_FULLTEXT),SQL_FULLTEXTfromv$sqlwhereSQL_FULLTEXTlike'%WITH%'orderbyFIRST_LOAD_TIMEdesc;select*fromv$sqlOracle查询某天sql执行记录selectt.SQL_TEXT,t.FIRST_LOAD_TIME fromv$sqlareat wheret.FIRST_LOAD_TIMElike'2020-11-09%' orderbyt.FIRST_LOAD_TIMEdesc##mysql的忘了,使用的时候可百度,记得是两行sql即可...
数据库操作教程 2023-02-25 05:40:39 -
TeamSpirit采访评价对手:PSG.LGD物是人非,非常想念Faith_bian
昨天,TeamSpirit战队在官方Youtube频道发布了队员前往LIMAMajor参赛的日常Vlog,其中Miposhka和崩溃哥在分组出来之后聊到了对于A组各大战队的看法,Miposhka表示曾经最喜欢的对手PSG.LGD已经物是人非,而崩溃哥更是表示非常想念与Faith_bian在之前比赛中的各种互动。以下是他们的对各个对手的完整评价内容:TSM他们是DPC北美赛区第一的战队,我们和他们打过几场训练,真的很有实力...
游戏资讯 2023-02-24 18:32:25