Java扛不住?Oracle临时表这招绝了,事务级瞬清数据

📅 2026/7/12 3:00:22 👁️ 阅读次数 📝 编程学习
Java扛不住?Oracle临时表这招绝了,事务级瞬清数据

在或以上版本中,可以创建以下两种临时表:

1。会话特有的临时表

( ) ON ROWS;

2。事务特有的临时表

( ) ON ROWS; TABLE

临时表是所建, 但它虽确实存在着, 然而你去尝试选一条记录, 之后用别的连接登录上去, 会发现记录却是空的, 懂了, 我再把下面两句话重新粘贴一下:

——关于“ON ROWS”, 这表明临时表是由事务指定的, 并且每次提交之后, 就会截断该表, 也就是删除全部的行。

一旦使用了“--ON ROWS”, 这就表明临时表是由会话来指定的, 而一旦出现中断会话这种情况, 就会把表截断。

冲突的问题更本不用考虑.

临时表所起的作用单单只是用以保存当下会话在运行过程之中会使用到的数据, 并且这些数据仅仅是在事务进行期间或者会话持续期间才会存在。

借助TABLE命令去完成创建一个临时表的操作, 对于事务类型的那种临时表而言, 其数据仅仅是在事务持续的那段期间才会存在, 对于会话类型的临时表来讲, 数据是在会话进行的期间才会存在。

对于当前会话而言, 会话的数据都是私有的, 不过其只能看到并修改自身的数据, 并且DML锁不会被加到临时表的数据上, 下面的语句能够控制行的存在性。

ON ROWS 表名行只是在事务期间可见

ON ROWS 表名行在整个会话期间可见

能针对临时表构造索引, 视图, 出发器, 能够借助工具导入导出表的定义, 然而无法导出数据, 表的定义对于所有的会话而言是可见的。

临时表

1简介

数据库能够加以保存的范畴之中拥有永久表, 除此之外, 还能够实施建立临时表的操作。这些被建立起来的临时表, 其用途在于对一个会话期间所产生的数据予以保存。

又或者是将所需的数据保存在一个事务当中。在会话退出之际, 或者是当用户进行提交以及回滚事务之时, 临时表的数据会自动被清空。

但是临时表的结构以及元数据还存储在用户的数据字典中。

临时表只在以及以上产品中支持。

2详细介绍

临时表分为 会话级临时表 和 事务级临时表。

会话级临时表意味着, 临时表里头的数据, 仅仅在会话的生命周期存续, 在用户退出, 会话结束之际, 会自动将临时表中的数据清除掉。

事务级临时表, 所指向的是, 临时表之内的数据, 仅于事务的生命周期里存在, 当一个事务走向结束, 或者说当其终结, 便会自动地清除临时表之中的数据。

临时表里头的数据, 仅当对着当下的时候才是有效的, 每一项都有着属于自身的临时数据, 而且没办法去访问别的临时表之中的数据。所以。

临时表用不着DML锁, 当某个会话终结(用户正常推出, 用户非正常推出, 实例崩溃)之际, 针对这个会话的。 这部分你原内容好像没写完, 请补充完整以便能准确改写。

不要去执行, 用于清空临时表数据的那个语句, 但别的会话临时表中的数据是不会被清空掉的。

你能够索引临时表, 并且能够在临时表的基础之上建立视图。同样地, 建立于临时表之上的索引亦是临时的, 且仅仅对当前之会话或者事务具备有效性。

临时表可以拥有触发器.

3建立临时表

所有会话都能见到临时表的定义, 然而, 表中的数据仅对当前会话或者事务具备有效性。

建立方法:

1) ON ROWS 定义了建立事务级临时表的方法.

CREATE GLOBAL TEMPORARY TABLE admin_work_area (startdate DATE, enddate DATE, class CHAR(20)) ON COMMIT DELETE ROWS;
SQL> CREATE GLOBAL TEMPORARY TABLE admin_work_area (startdate DATE, enddate DATE, class CHAR(20)) ON COMMIT DELETE ROWS; SQL> create table permernate( a number); SQL> insert into admin_work_area values(sysdate,sysdate, ‘temperary table ‘); SQL> insert into permernate values(1); SQL> commit; SQL> select * from admin_work_area; SQL> select * from permernate; A 1

2)ON ROWS 定义了创建会话级临时表的方法.

CREATE GLOBAL TEMPORARY TABLE admin_work_area (startdate DATE, enddate DATE, class CHAR(20)) ON COMMIT PRESERVE ROWS; EXAMPLE:

会话1:

SQL> drop table admin_work_area; SQL> CREATE GLOBAL TEMPORARY TABLE admin_work_area 2 (startdate DATE, 3 enddate DATE, 4 class CHAR(20)) 5 ON COMMIT PRESERVE ROWS; SQL> insert into permernate values(2); SQL> insert into admin_work_area values(sysdate,sysdate, ‘session temperary ‘); SQL> commit; SQL> select * from permernate; A ---------- 1 2 SQL> select * from admin_work_area; STARTDATE ENDDATE CLASS ---------- ---------- -------------------- 17-1?? -03 17-1?? -03 session temperary

会话2:

SQL> select * from permernate; A ---------- 1 2 SQL> select * from admin_work_area;

未选择行.

会话2看不见会话1中临时表的数据.

4 临时表和临时表异同

SQL 临时表

也能够去创建临时的表, 临时的表跟永久的表是相似的, 然而临时的表是存储在其中的, 当不再对其加以使用的时候就会自动地被删除。

类型有本地与全局这两种的临时表, 此二者于名称、可见性以及可用性这些方面都不一样, 本地临时表的名称是用单个数字符号 (#) 来作为开头。

仅在对于目前当下于此现存于此刻的用户连接而言才是能够被看见的, 当用户从那由“?”与“SQL”以及“2000”所共同构成的实例断开连接之际便会被予以删除, 全局临时表的名称是以数学符号。

以(##)开始, 创建制成的之后对于任何的用户而言都是能够看见的样态, 在把那些引用此表的所有的用户都从SQL断开关联的时候, 就会被撤销掉。

比如说, 若是创设起名字为 的那张表, 那么任何一个人, 只要在具备对该表使用的安全权限的数据库里, 便可使用这个表, 不过, 除非此表已经被删除了才行。

若创建名为 # 的本地临时表, 那么只有您方能针对该表实施操作, 并且在断开连接之际, 此表会被删除。要是创建名为 ## 的全局临时表。

在数据表之中, 随便哪一个用户, 都能够对这个表开展操作, 进行执行。要是这个表, 是在您创建完成之后, 不存在其他用户去使用它, 那么等到您断开连接之际, 该表就会被删除掉。要是该表, 是在您创建之时。

后有其他用户使用,则 SQL 在所有用户断开连接后删除该表

不同:

1. SQL临时表属于“内存表”范畴, 其表是存于内存里的, 临时表只要未执行DROP TABLE操作, 那么表定义就会留存于数据字典当中~

2. SQL 临时表不存在类似临时表 事务级别 上的功能.

3, SQL的本地临时表(#), 和会话级别临时表相类似, 然而, 在会话退出之际, 不会将表删除。

那4个SQL的全局临时表(####), 是说许多连接共同享用同一块儿内存, 在没有指针去引用那个内存区时, SQL会自行释放全局临时表。

5, 因为它并非属于一种处于内存内部空间的数据库, 所以要是存在类似于SQL这般频繁地针对临时表来开展创造跟消除的操作, 那必然是会对性能造成影响的。

所以会保留临时表的定义直到用户DROP TABLE.

对于6而言, 在其中, 若是存在需要多个用户一起共用一个表的情况, 这种状况类似于SQL的全局临时表##, 那么此时就能够借助永久表。

紧接着, 于表里头增添若干能够唯一标识用户的列, 借助触发器以及视图, 在用户退出之际, 依据该登录用户的唯一信息, 将表中对应的相关数据予以删除。

这种方法给带来了一定量的负载.

以上呈现的便属于针对临时表的资料梳理整合, 在后续阶段会持续不断地补充与之相关的资料, 要多谢诸位对本网站的支持哟!WWw.BdX3.cN/pdds/27389.html
WWw.BdX3.cN/pdds/27390.html
WWw.BdX3.cN/pdds/27391.html
WWw.BdX3.cN/pdds/27392.html
WWw.BdX3.cN/pdds/27393.html
WWw.BdX3.cN/pdds/27394.html
WWw.BdX3.cN/pdds/27395.html
WWw.BdX3.cN/pdds/27396.html
WWw.BdX3.cN/pdds/27397.html
WWw.BdX3.cN/pdds/27398.html
WWw.BdX3.cN/pdds/27399.html
WWw.BdX3.cN/pdds/27400.html
WWw.BdX3.cN/pdds/27401.html
WWw.BdX3.cN/pdds/27402.html
WWw.BdX3.cN/pdds/27403.html
WWw.BdX3.cN/pdds/27404.html
WWw.BdX3.cN/pdds/27405.html
WWw.BdX3.cN/pdds/27406.html
WWw.BdX3.cN/pdds/27407.html
WWw.BdX3.cN/pdds/27408.html
WWw.BdX3.cN/pdds/27409.html
WWw.BdX3.cN/pdds/27410.html
WWw.BdX3.cN/pdds/27411.html
WWw.BdX3.cN/pdds/27412.html
WWw.BdX3.cN/pdds/27413.html
WWw.BdX3.cN/pdds/27414.html
WWw.BdX3.cN/pdds/27415.html
WWw.BdX3.cN/pdds/27416.html
WWw.BdX3.cN/pdds/27417.html
WWw.BdX3.cN/pdds/27418.html
WWw.BdX3.cN/pdds/27419.html
WWw.BdX3.cN/pdds/27420.html
WWw.BdX3.cN/pdds/27421.html
WWw.BdX3.cN/pdds/27422.html
WWw.BdX3.cN/pdds/27423.html
WWw.BdX3.cN/pdds/27424.html
WWw.BdX3.cN/pdds/27425.html
WWw.BdX3.cN/pdds/27426.html
WWw.BdX3.cN/pdds/27427.html
WWw.BdX3.cN/pdds/27428.html
WWw.BdX3.cN/pdds/27429.html
WWw.BdX3.cN/pdds/27430.html
WWw.BdX3.cN/pdds/27431.html
WWw.BdX3.cN/pdds/27432.html
WWw.BdX3.cN/pdds/27433.html
WWw.BdX3.cN/pdds/27434.html
WWw.BdX3.cN/pdds/27435.html
WWw.BdX3.cN/pdds/27436.html
WWw.BdX3.cN/pdds/27437.html
WWw.BdX3.cN/pdds/27438.html
WWw.BdX3.cN/pdds/27439.html
WWw.BdX3.cN/pdds/27440.html
WWw.BdX3.cN/pdds/27441.html
WWw.BdX3.cN/pdds/27442.html
WWw.BdX3.cN/pdds/27443.html
WWw.BdX3.cN/pdds/27444.html
WWw.BdX3.cN/pdds/27445.html
WWw.BdX3.cN/pdds/27446.html
WWw.BdX3.cN/pdds/27447.html
WWw.BdX3.cN/pdds/27448.html
WWw.BdX3.cN/pdds/27449.html
WWw.BdX3.cN/pdds/27450.html
WWw.BdX3.cN/pdds/27451.html
WWw.BdX3.cN/pdds/27452.html
WWw.BdX3.cN/pdds/27453.html
WWw.BdX3.cN/pdds/27454.html
WWw.BdX3.cN/pdds/27455.html
WWw.BdX3.cN/pdds/27456.html
WWw.BdX3.cN/pdds/27457.html
WWw.BdX3.cN/pdds/27458.html
WWw.BdX3.cN/pdds/27459.html
WWw.BdX3.cN/pdds/27460.html
WWw.BdX3.cN/pdds/27461.html
WWw.BdX3.cN/pdds/27462.html
WWw.BdX3.cN/pdds/27463.html
WWw.BdX3.cN/pdds/27464.html
WWw.BdX3.cN/pdds/27465.html
WWw.BdX3.cN/pdds/27466.html
WWw.BdX3.cN/pdds/27467.html
WWw.BdX3.cN/pdds/27468.html
WWw.BdX3.cN/pdds/27469.html
WWw.BdX3.cN/pdds/27470.html
WWw.BdX3.cN/pdds/27471.html
WWw.BdX3.cN/pdds/27472.html
WWw.BdX3.cN/pdds/27473.html
WWw.BdX3.cN/pdds/27474.html
WWw.BdX3.cN/pdds/27475.html
WWw.BdX3.cN/pdds/27476.html
WWw.BdX3.cN/pdds/27477.html
WWw.BdX3.cN/pdds/27478.html
WWw.BdX3.cN/pdds/27479.html
WWw.BdX3.cN/pdds/27480.html
WWw.BdX3.cN/pdds/27481.html
WWw.BdX3.cN/pdds/27482.html
WWw.BdX3.cN/pdds/27483.html
WWw.BdX3.cN/pdds/27484.html
WWw.BdX3.cN/pdds/27485.html
WWw.BdX3.cN/pdds/27486.html
WWw.BdX3.cN/pdds/27487.html
WWw.BdX3.cN/pdds/27488.html
WWw.BdX3.cN/pdds/27489.html
WWw.BdX3.cN/pdds/27490.html
WWw.BdX3.cN/pdds/27491.html
WWw.BdX3.cN/pdds/27492.html
WWw.BdX3.cN/pdds/27493.html
WWw.BdX3.cN/pdds/27494.html
WWw.BdX3.cN/pdds/27495.html
WWw.BdX3.cN/pdds/27496.html
WWw.BdX3.cN/pdds/27497.html
WWw.BdX3.cN/pdds/27498.html
WWw.BdX3.cN/pdds/27499.html
WWw.BdX3.cN/pdds/27500.html
WWw.BdX3.cN/pdds/27501.html
WWw.BdX3.cN/pdds/27502.html
WWw.BdX3.cN/pdds/27503.html
WWw.BdX3.cN/pdds/27504.html
WWw.BdX3.cN/pdds/27505.html
WWw.BdX3.cN/pdds/27506.html
WWw.BdX3.cN/pdds/27507.html
WWw.BdX3.cN/pdds/27508.html
WWw.BdX3.cN/pdds/27509.html
WWw.BdX3.cN/pdds/27510.html
WWw.BdX3.cN/pdds/27511.html
WWw.BdX3.cN/pdds/27512.html
WWw.BdX3.cN/pdds/27513.html
WWw.BdX3.cN/pdds/27514.html
WWw.BdX3.cN/pdds/27515.html
WWw.BdX3.cN/pdds/27516.html
WWw.BdX3.cN/pdds/27517.html
WWw.BdX3.cN/pdds/27518.html
WWw.BdX3.cN/pdds/27519.html
WWw.BdX3.cN/pdds/27520.html
WWw.BdX3.cN/pdds/27521.html
WWw.BdX3.cN/pdds/27522.html
WWw.BdX3.cN/pdds/27523.html
WWw.BdX3.cN/pdds/27524.html
WWw.BdX3.cN/pdds/27525.html
WWw.BdX3.cN/pdds/27526.html
WWw.BdX3.cN/pdds/27527.html
WWw.BdX3.cN/pdds/27528.html
WWw.BdX3.cN/pdds/27529.html
WWw.BdX3.cN/pdds/27530.html
WWw.BdX3.cN/pdds/27531.html
WWw.BdX3.cN/pdds/27532.html
WWw.BdX3.cN/pdds/27533.html
WWw.BdX3.cN/pdds/27534.html
WWw.BdX3.cN/pdds/27535.html
WWw.BdX3.cN/pdds/27536.html
WWw.BdX3.cN/pdds/27537.html
WWw.BdX3.cN/pdds/27538.html
WWw.BdX3.cN/pdds/27539.html
WWw.BdX3.cN/pdds/27540.html
WWw.BdX3.cN/pdds/27541.html
WWw.BdX3.cN/pdds/27542.html
WWw.BdX3.cN/pdds/27543.html
WWw.BdX3.cN/pdds/27544.html
WWw.BdX3.cN/pdds/27545.html
WWw.BdX3.cN/pdds/27546.html
WWw.BdX3.cN/pdds/27547.html
WWw.BdX3.cN/pdds/27548.html
WWw.BdX3.cN/pdds/27549.html
WWw.BdX3.cN/pdds/27550.html
WWw.BdX3.cN/pdds/27551.html
WWw.BdX3.cN/pdds/27552.html
WWw.BdX3.cN/pdds/27553.html
WWw.BdX3.cN/pdds/27554.html
WWw.BdX3.cN/pdds/27555.html
WWw.BdX3.cN/pdds/27556.html
WWw.BdX3.cN/pdds/27557.html
WWw.BdX3.cN/pdds/27558.html
WWw.BdX3.cN/pdds/27559.html
WWw.BdX3.cN/pdds/27560.html
WWw.BdX3.cN/pdds/27561.html
WWw.BdX3.cN/pdds/27562.html
WWw.BdX3.cN/pdds/27563.html
WWw.BdX3.cN/pdds/27564.html
WWw.BdX3.cN/pdds/27565.html
WWw.BdX3.cN/pdds/27566.html
WWw.BdX3.cN/pdds/27567.html
WWw.BdX3.cN/pdds/27568.html
WWw.BdX3.cN/pdds/27569.html
WWw.BdX3.cN/pdds/27570.html
WWw.BdX3.cN/pdds/27571.html
WWw.BdX3.cN/pdds/27572.html
WWw.BdX3.cN/pdds/27573.html
WWw.BdX3.cN/pdds/27574.html
WWw.BdX3.cN/pdds/27575.html
WWw.BdX3.cN/pdds/27576.html
WWw.BdX3.cN/pdds/27577.html
WWw.BdX3.cN/pdds/27578.html
WWw.BdX3.cN/pdds/27579.html
WWw.BdX3.cN/pdds/27580.html
WWw.BdX3.cN/pdds/27581.html
WWw.BdX3.cN/pdds/27582.html
WWw.BdX3.cN/pdds/27583.html
WWw.BdX3.cN/pdds/27584.html
WWw.BdX3.cN/pdds/27585.html
WWw.BdX3.cN/pdds/27586.html
WWw.BdX3.cN/pdds/27587.html
WWw.BdX3.cN/pdds/27588.html
WWw.BdX3.cN/pdds/27589.html
WWw.BdX3.cN/pdds/27590.html
WWw.BdX3.cN/pdds/27591.html
WWw.BdX3.cN/pdds/27592.html
WWw.BdX3.cN/pdds/27593.html
WWw.BdX3.cN/pdds/27594.html
WWw.BdX3.cN/pdds/27595.html
WWw.BdX3.cN/pdds/27596.html
WWw.BdX3.cN/pdds/27597.html
WWw.BdX3.cN/pdds/27598.html
WWw.BdX3.cN/pdds/27599.html
WWw.BdX3.cN/pdds/27600.html
WWw.BdX3.cN/pdds/27601.html
WWw.BdX3.cN/pdds/27602.html
WWw.BdX3.cN/pdds/27603.html
WWw.BdX3.cN/pdds/27604.html
WWw.BdX3.cN/pdds/27605.html
WWw.BdX3.cN/pdds/27606.html
WWw.BdX3.cN/pdds/27607.html
WWw.BdX3.cN/pdds/27608.html
WWw.BdX3.cN/pdds/27609.html
WWw.BdX3.cN/pdds/27610.html
WWw.BdX3.cN/pdds/27611.html
WWw.BdX3.cN/pdds/27612.html
WWw.BdX3.cN/pdds/27613.html
WWw.BdX3.cN/pdds/27614.html
WWw.BdX3.cN/pdds/27615.html
WWw.BdX3.cN/pdds/27616.html
WWw.BdX3.cN/pdds/27617.html
WWw.BdX3.cN/pdds/27618.html
WWw.BdX3.cN/pdds/27619.html
WWw.BdX3.cN/pdds/27620.html
WWw.BdX3.cN/pdds/27621.html
WWw.BdX3.cN/pdds/27622.html
WWw.BdX3.cN/pdds/27623.html
WWw.BdX3.cN/pdds/27624.html
WWw.BdX3.cN/pdds/27625.html
WWw.BdX3.cN/pdds/27626.html
WWw.BdX3.cN/pdds/27627.html
WWw.BdX3.cN/pdds/27628.html
WWw.BdX3.cN/pdds/27629.html
WWw.BdX3.cN/pdds/27630.html
WWw.BdX3.cN/pdds/27631.html
WWw.BdX3.cN/pdds/27632.html
WWw.BdX3.cN/pdds/27633.html
WWw.BdX3.cN/pdds/27634.html
WWw.BdX3.cN/pdds/27635.html
WWw.BdX3.cN/pdds/27636.html
WWw.BdX3.cN/pdds/27637.html
WWw.BdX3.cN/pdds/27638.html
WWw.BdX3.cN/pdds/27639.html
WWw.BdX3.cN/pdds/27640.html
WWw.BdX3.cN/pdds/27641.html
WWw.BdX3.cN/pdds/27642.html
WWw.BdX3.cN/pdds/27643.html
WWw.BdX3.cN/pdds/27644.html
WWw.BdX3.cN/pdds/27645.html
WWw.BdX3.cN/pdds/27646.html
WWw.BdX3.cN/pdds/27647.html
WWw.BdX3.cN/pdds/27648.html
WWw.BdX3.cN/pdds/27649.html
WWw.BdX3.cN/pdds/27650.html
WWw.BdX3.cN/pdds/27651.html
WWw.BdX3.cN/pdds/27652.html
WWw.BdX3.cN/pdds/27653.html
WWw.BdX3.cN/pdds/27654.html
WWw.BdX3.cN/pdds/27655.html
WWw.BdX3.cN/pdds/27656.html
WWw.BdX3.cN/pdds/27657.html
WWw.BdX3.cN/pdds/27658.html
WWw.BdX3.cN/pdds/27659.html
WWw.BdX3.cN/pdds/27660.html
WWw.BdX3.cN/pdds/27661.html
WWw.BdX3.cN/pdds/27662.html
WWw.BdX3.cN/pdds/27663.html
WWw.BdX3.cN/pdds/27664.html
WWw.BdX3.cN/pdds/27665.html
WWw.BdX3.cN/pdds/27666.html
WWw.BdX3.cN/pdds/27667.html
WWw.BdX3.cN/pdds/27668.html
WWw.BdX3.cN/pdds/27669.html
WWw.BdX3.cN/pdds/27670.html
WWw.BdX3.cN/pdds/27671.html
WWw.BdX3.cN/pdds/27672.html
WWw.BdX3.cN/pdds/27673.html
WWw.BdX3.cN/pdds/27674.html
WWw.BdX3.cN/pdds/27675.html
WWw.BdX3.cN/pdds/27676.html
WWw.BdX3.cN/pdds/27677.html
WWw.BdX3.cN/pdds/27678.html
WWw.BdX3.cN/pdds/27679.html
WWw.BdX3.cN/pdds/27680.html
WWw.BdX3.cN/pdds/27681.html
WWw.BdX3.cN/pdds/27682.html
WWw.BdX3.cN/pdds/27683.html
WWw.BdX3.cN/pdds/27684.html
WWw.BdX3.cN/pdds/27685.html
WWw.BdX3.cN/pdds/27686.html
WWw.BdX3.cN/pdds/27687.html
WWw.BdX3.cN/pdds/27688.html
WWw.BdX3.cN/pdds/27689.html
WWw.BdX3.cN/pdds/27690.html
WWw.BdX3.cN/pdds/27691.html
WWw.BdX3.cN/pdds/27692.html
WWw.BdX3.cN/pdds/27693.html
WWw.BdX3.cN/pdds/27694.html
WWw.BdX3.cN/pdds/27695.html
WWw.BdX3.cN/pdds/27696.html
WWw.BdX3.cN/pdds/27697.html
WWw.BdX3.cN/pdds/27698.html
WWw.BdX3.cN/pdds/27699.html
WWw.BdX3.cN/pdds/27700.html
WWw.BdX3.cN/pdds/27701.html
WWw.BdX3.cN/pdds/27702.html
WWw.BdX3.cN/pdds/27703.html
WWw.BdX3.cN/pdds/27704.html
WWw.BdX3.cN/pdds/27705.html
WWw.BdX3.cN/pdds/27706.html
WWw.BdX3.cN/pdds/27707.html
WWw.BdX3.cN/pdds/27708.html
WWw.BdX3.cN/pdds/27709.html
WWw.BdX3.cN/pdds/27710.html
WWw.BdX3.cN/pdds/27711.html
WWw.BdX3.cN/pdds/27712.html
WWw.BdX3.cN/pdds/27713.html
WWw.BdX3.cN/pdds/27714.html
WWw.BdX3.cN/pdds/27715.html
WWw.BdX3.cN/pdds/27716.html
WWw.BdX3.cN/pdds/27717.html
WWw.BdX3.cN/pdds/27718.html
WWw.BdX3.cN/pdds/27719.html
WWw.BdX3.cN/pdds/27720.html
WWw.BdX3.cN/pdds/27721.html
WWw.BdX3.cN/pdds/27722.html
WWw.BdX3.cN/pdds/27723.html