数据库
周作业
江苏科技大学-计算机学院
展开
-
数据库中的“锁”
1.什么是活锁?如何避免。 如果事务T1封锁了数据R,事务T2又请求封锁R,于是T2等待。T3也请求封锁R,当T1释放了R上的封锁之后系统首先批准了T3的请求,T2仍然等待。然后T4又请求封锁R,当T3释放了R上的封锁之后系统又批准了T4的请求,…,T2有可能永远等待,这就是活锁的情形。 避免活锁的简单方法是采用先来先服务的策略。 2.什么是死锁?如何避免和防范。 死锁的形成:如果事务T...原创 2018-05-14 23:19:36 · 451 阅读 · 0 评论 -
B+树
转载自:http://m.sohu.com/a/156886901_479559来源:伯乐专栏作者/玻璃猫,微信公众号 - 梦见(dreamsee321)如有好文章投稿,请点击 → 这里了解详情之前已介绍了 B 树的原理和应用,没看过的童鞋,请点击下面的链接:《漫画:什么是 B 树?》这一次我们来介绍 B+ 树。一个m阶的B树具有如下几个特征:1.根结点至少有两个子女。2.每个中间节点都包含k-1...转载 2018-05-14 23:23:43 · 419 阅读 · 0 评论 -
pivot实现oracle数据库中的行转列
效果如下图: 原表 目标表: 表名称:tkhsx_cs SQL语句: SELECT * FROM (SELECT T.KHH,T.SXBM,T.GXRQ.T.SXZ FROM TKHSX_CS T)--注意这里的列,除了要转换的之外,其余的都要一样,不然不能合并到一行里面去 PIVOT(MAX(SXZ) FOR SXBM IN('JTDZ','XQAH','NL'); ...原创 2019-04-29 16:38:01 · 358 阅读 · 0 评论 -
oracle数据库中——wm_concat实现列的拼接
原表: 目标表: SQL语句: SELECT KHH,WM_CONCAT(SXZ) FROM TKHSX_CS GROUP BY KHH; --注意后面有group by原创 2019-04-29 16:48:11 · 519 阅读 · 0 评论 -
oracle安装的时候显示检查物理内存失败的解决方法
解决方案:直接忽略,屁事没有。原创 2019-07-19 09:06:00 · 1231 阅读 · 0 评论 -
利用rowid删除重复记录
举例: DELETE FROM student WHERE ROWID IN (SELECT A.ROWID FROM student A,student B WHERE A.sno=B.sno AND A.ROWID > B.ROWID); 或者 DELETE FROM student d WHERE d.rowid > (SEL...原创 2019-07-23 18:33:24 · 436 阅读 · 0 评论 -
oracle排序后从相同的顺序中随机取一行
要求: 要求从这个表取数据,v2字段相同的 随机取一个出来。第1/2随机取一行,第5/6/7行随机取一行,其他的3、4行都保留。 效果展示: 查询语句写法: Select s.* from ( select t.*, row_number() over (partition by ffsx order by dbms_random.value) as group_idx ...原创 2019-08-30 11:50:11 · 558 阅读 · 0 评论