热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

Oracle表空间与数据文件

----Oracle表空间与数据文件--*一、概念表空间:是一个或多个数据文件的逻辑集合表空间逻辑存储对象:永久段--如表与索引临时段--如临时表数据与排序段回滚段--用于事物回滚或

--============================== --Oracle 表空间与数据文件 --============================== /* 一、概念 表空间:是一个或多个数据文件的逻辑集合 表空间逻辑存储对象:永久段 -- 如表与索引 临时段 -- 如临时表数据与排序段 回滚段 -- 用于事物回滚或

--==============================

--Oracle 表空间与数据文件

--==============================

/*

一、概念

表空间:是一个或多个数据文件的逻辑集合

表空间逻辑存储对象:永久段-->如表与索引

临时段-->如临时表数据与排序段

回滚段-->用于事物回滚或闪回内存的撤销数据

表空间分类:系统表空间(systemsysaux),非系统表空间

一个表空间至少包含一个数据文件,一个数据文件只能属于一个表空间。

不可或缺的几个表空间:

SYSTEM --->字典表空间,不能被损坏

UNDO --->dml,dql把数据快照到此,数据提交即消失(用于恢复)

SYSAUX --->10g 高并发系统繁忙时,会造成system争用,将工具放到SYSAUX,减轻system的压力,SYSAUX不影响系统(影响性能)

TEMP --->临时数据相关的内容

USERS --->10g 用户数据从system拨离出来

二、Oracle的存储结构

1.Schema: 用户--->创建相关对象、表、视图、序列、函数、存储过程、包等

2.逻辑结构:database数据库--->tablespace表空间---> segment--->extent区间----> block

逻辑结构是Oracle内部管理数据库中对象的方式

3.物理结构:OS block --->datafile 物理结构通常是一系列数据文件

4.举例描述scott用户创建对象的组织方式 */

--查看scott用户的默认表空间及数据文件

SQL> select USERNAME,DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE

2 from dba_users

3 where username = 'SCOTT';

USERNAME DEFAULT_TABLESPACE TEMPORARY_TABLESPACE

------------------------------ ------------------------------ ------------------------------

SCOTT USERS TEMP

SQL> col name format a50

SQL> select t1.name,t2.name --查看表空间及数据文件

2 from v$tablespace t1,v$datafile t2

3 where t1.ts# = t2.ts#;

NAME NAME

-------------------------------------------------- --------------------------------------------------

SYSTEM /u01/app/oracle/oradata/orcl/system01.dbf

UNDOTBS1 /u01/app/oracle/oradata/orcl/undotbs01.dbf

SYSAUX /u01/app/oracle/oradata/orcl/sysaux01.dbf

USERS /u01/app/oracle/oradata/orcl/users01.dbf

EXAMPLE /u01/app/oracle/oradata/orcl/example01.dbf

/*

scott-->emp(table)-->数据定义(位于)-->system表空间

数据(位于) -->user表空间(逻辑存储)-->表段-->区间-->内存块

-->索引段等-->区间-->内存块

user表空间(物理存储)-->user01.dbf

-->采用本地管理,包含头部信息,可用、已用等位图信息

databuffer缓冲区满则调用dbwr进程将数据写入到物理文件当中 */

/*

三、创建表空间

--简要语法:

CREATE [BIGFILE | SMALLFILE] [TEMPORARY] TABLESPACE tablespace name

DATAFILE datafile spec | TEMPFILE tempfile spec

[MINIMUM EXTENT minimum extent size]

[BLOCKSIZE blocksize]

[[COMPRESS|NOCOMPRESS] DEFAULT STORAGE (default storage clause)]

[LOGGING|NOLOGGING]

[FORCE LOGGING]

[ONLINE|OFFLINE]

[EXTENT MANAGEMENT DICTIONARY |

LOCAL [AUTOALLOCATE|UNIFORM SIZE size]]

[SEGMENT SPACE MANAGEMENT MANUAL|AUTO]

[FLASHBACK ON|OFF]

--创建表空间的条件

1.具有create tablespace的权限,DBA角色具有该权限,sysdba,sysoper

2.创建的是bigfiel ,还是smallifle 超过T 级别应考虑bigfile

3.新建的表空间的I/O,是否会导致磁盘I/O不够用

4.datafile后跟的路径应该具备写的权限 */

--查看缺省是BIGFILE 还是SMALLFILE,当缺省为SMALLFILE,创建表空间不指定表空间类型则为SMALLFILE

SQL> select PROPERTY_NAME,PROPERTY_VALUE from database_properties where PROPERTY_NAME like '%TBS%';

PROPERTY_NAME PROPERTY_VALUE

------------------------------ --------------------------------------------------

DEFAULT_TBS_TYPE SMALLFILE

--修改创建表空间为大或小表空间的默认值

SQL> alter database set default bigfile tablespace;

Database altered.

SQL> select PROPERTY_NAME,PROPERTY_VALUE from database_properties where PROPERTY_NAME like '%TBS%';

PROPERTY_NAME PROPERTY_VALUE

------------------------------ --------------------------------------------------

DEFAULT_TBS_TYPE BIGFILE

--改回为缺省值

SQL> alter database set default smallfile tablespace;

Database altered.

--建议创建表空间时最好带上[BIGFILE | SMALLFILE]参数,以免参数设置导致创建了不合理的表空间

/*

注意:

大表文件(bigfile)最大可以存放个T的容量。头文件的大小达到了G-->block,普通的头文件大小为M---->block

create bigfile tablespace <> datafile <>........;

好处:减少了数据文件的个数,管理方便,大的对象的存放得到了优化。减少了control文件的信息,控制文件定义了datafile的个数。

bigfile只能存在一个数据文件,所以要保证分配的的磁盘具有足够的空间。 */

--演示创建表空间

SQL> create tablespace TBS1 datafile '/u01/app/oracle/oradata/orcl/tbs1.dbf' size 100m;

Tablespace created.

SQL> col name format a50

SQL> select t1.name,t2.name

2 from v$tablespace t1,v$datafile t2

3 where t1.ts# = t2.ts#;

NAME NAME

-------------------------------------------------- --------------------------------------------------

SYSTEM /u01/app/oracle/oradata/orcl/system01.dbf

UNDOTBS1 /u01/app/oracle/oradata/orcl/undotbs01.dbf

SYSAUX /u01/app/oracle/oradata/orcl/sysaux01.dbf

USERS /u01/app/oracle/oradata/orcl/users01.dbf

EXAMPLE /u01/app/oracle/oradata/orcl/example01.dbf

TBS1 /u01/app/oracle/oradata/orcl/tbs1.dbf

/*

创建临时表空间:

创建临时表空间,不能使用非标准数据块,另临时表空间不能存放永久对象。*/

CREATE TMEPORARY TABLESPACE tablespace_name

TEMPFILE '...' SIZE n

CREATE TEMPORARY TABLESPACE T2 TEMPFILE '/opt/oracle/oradata/orcl/t2.dbf'

size 100m;

/*

临时表空间具有以下特征:

临时数据文件不能置为只读

临时数据文件不能重命名

监时数据文件的日志方式总是NOLOGGING

临时表空间扩容:*/

--(1)重置临时文件大小

alter database tempfile '/opt/oracle/oradata/orcl/t2.dbf' resize 150m;

--(2)让临时文件能自动扩展

alter database tempfile '/opt/oracle/oradata/orcl/t2.dbf'

autoextend on next 10m maxsize 50m;

--(3)增加临时文件

alter tablespace t2 add tempfile '/disk8/oracle/t2b.dbf' size 50m;

--查看临时文件

select TABLESPACE_NAME,FILE_NAME,BYTES/1024/1024 "SIZE(MB)"

from dba_temp_files;

--默认临时表空间:

select * from database_properties;

--修改默认临时表空间:

ALTER DATABASE DEFAULT TEMPORARY TABLESPACE T2;

/*

默认临时表空间最好要指定一下,如果没有指定默认的临时表空间,那么将使用system表空间作为排

序区

默认临时表空间有一定的限制:

默认临时表空间不能删除

默认临时表空间不能脱机

获得创建表空间的语句:*/

SELECT dbms_metadata.get_ddl('TABLESPACE','SYSTEM') FROM dual;

/*

临时表空间组:

10G引入的,是一组临时表空间,只能由临时表空间组成。组名不能与临时表空间同名

临时表空间不能显示的创建和删除,当把第一个临时表空间分配给某个临时表空间组的时候,自动创建

临时表空间组,将最后一个临时表空间,删除时,组也将自动删除。

创建临时表空间组:

1、创建临时表空间的时候 */

CREATE TEMPORARY TABLESPACE tablespace_name TEMPFILE '...' SIZE n

TABLESPACE GROUP group_name;

ALTER TABLESPACE tablespace_name TABLESPACE GROUP group_name;

ALTER TABLESPACE T3 TABLESPACE GROUP TEMP_GRP;

--查看临时表空间组的信息:

dba_tablespace_groups

SELECT * FROM DBA_TABLESPACE_GROUPS;

--将临时表空间组成员移除:

ALTER TABLESPACE tablespace_name TABLESPACE GROUP '';

--可将系统默认的临时表空间设为临时表空间组:

ALTER DATABASE DEFAULT TEMPORARY TABLESPACE tablespace_name;

--删除临时表空间:

--将所有成员全移出去,便自动删除

--创建UNDO表空间(还原表空间):

/*

创建语法:*/

CREATE UNDO TABLESPACE tablespace_name DATAFILE '...' SIZE n

SQL> CREATE UNDO TABLESPACE undo2

DATAFILE '/opt/oracle/oradata/orcl/undo2_01.dbf' SIZE 200M,

'/opt/oracle/oradata/orcl/undo2_02.dbf' size 100m;

--修改当前系统的UNDO表空间:

ALTER SYSTEM SET UNDO_TABLESPACE=tablespace_name

/*

UNDO表空间扩容:

()重置DATAFILE大小

()让DATAFILEAUTOEXTEND

()添加数据文件

删除UNDO表空间 */

DROP TABLESPACE tablespace_name

/*

注:当前的UNDO表空间不能删除

系统只能使用一个UNDO表空间 */

--创建表空间的详细语法:http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/statements_7003.htm#SQLRF01403

/*

四、表空间的管理方式:

字典管理:oracle 8i(不包括i),只存在一种表空间的管理模式,即字典管理表空间(DMT

DMT是指oracle的空间分配或回收是通过数据库中的数据字典表来记录和管理的

用于管理的两个数据字典表分别是:UET$used extents)FET$(freeextents)

其工作方式是:当建立一个新的段或者段在表空间时,oracle通过一系列的SQL语句来完成这个工作

且和前面的两个字典表有关,在繁忙的系统中会造成竞争和等待(另一个DMT会带来的问题是空间碎片)

本地管理(LMT): iR2版本后成了默认的选项

LMT在表空间的数据文件头部加入了一个位图区域,在其中记录每个extent的使用状况

extent被使用或者被释放,oracle会更新头部的记录来反映这个变化,不产生回滚信息

因为仅仅操作数据文件头部的几个数据块,不用操作数据字典,LMTDMT要快,尤其是在繁忙的时候更明显

--查看表空间使用的管理方式: */

SQL> select TABLESPACE_NAME,EXTENT_MANAGEMENT,BLOCK_SIZE,STATUS,CONTENTS,FORCE_LOGGING,BIGFILE

2 from dba_tablespaces;

TABLESPACE_NAME EXTENT_MAN BLOCK_SIZE STATUS CONTENTS FOR BIG

------------------------------ ---------- ---------- --------- --------- --- ---

SYSTEM LOCAL 8192 ONLINE PERMANENT NO NO

UNDOTBS1 LOCAL 8192 ONLINE UNDO NO NO

SYSAUX LOCAL 8192 ONLINE PERMANENT NO NO

TEMP LOCAL 8192 ONLINE TEMPORARY NO NO

USERS LOCAL 8192 ONLINE PERMANENT NO NO

EXAMPLE LOCAL 8192 ONLINE PERMANENT NO NO

TBS1 LOCAL 8192 ONLINE PERMANENT NO NO

--DMT LMT 的相互转换

--将字典管理的表空间转换为本地管理

exec dbms_space_admin.tablespace_migrate_to_local('表空间名') --表空间名用大写

--将本地管理的表空间转换为字典管理

exec dbms_space_admin.tablespace_migrate_from_local('表空间名')

--表空间改名:

--必须在open状态下,system , sysaux 不能改名

ALTER TABLESPACE XXX RENAME TO YYY

--表空间的扩容:

/*

表空间的大小由组成它的所有数据文件的大小之和来决定

扩容的方法:*/

--(1)重置数据文件大小

ALTER DATABASE DATAFILE '...' | FileNo RESIZE XX

--(2)设置数据文件能自动增长

ALTER DATABASE DATAFILE '... '| FileNo AUTOEXTEND ON | OFF NEXT 20M MAXSIZE 300M;

--查看哪些表空间为自动增长

SELECT FILE_NAME,TABLESPACE_NAME,AUTOEXTENSIBLE FROM dba_data_files;

/* (3)添加数据文件

增加到表空间中的数据文件不能直接从表空间中删除,除非删掉整个表空间

增加数据文件将有助于均衡I/O

一个表空间文件最多为个,文件越多,执行一次检查点的代价越高 */

ALTER TABLESPACE tablespace_name ADD DATAFILE '...' SIZE XX;

ALTER TABLESPACE tbs2 ADD DATAFILE '/u01/app/oracle/oradata/orcl/tbs2.dbf' size 200m autoextend on ;

--表空间的四种状态:

online

offline

read only

read write

/*

offline

一个表空间的正常状态是联机(ONLINE),有时需要将某一个表空间进行脱机,以进行数据库维护

如:

在数据库打开的状态下移动数据文件

在数据库打开的情况下恢复一个表空间或数据文件

执行表空间的脱机备份(虽然可以进行进行联机备份)

使数据库某一部分不可访问,让其它部分能正常访问。

表空间脱机的时候,将产生检查点事件,该表空间上的数据是不能访问的

命令:*/

ALTER TABLESPACE tablespace_name OFFLINE;

--联机命令:

ALTER TABLESPACE tablespace_name ONLINE;

--在脱机后,有可能无法再联机,这时要做数据的介质恢复

ALTER DATABASE RECOVER TABLESPACE tablespace_name

ALTER TABLESPACE tablespace_name ONLINE;

/*

read only:

不能执行DML语句,可以使用的为DDLDQL语句 */

ALTER TABLESPACE tablespace_name READ ONLY;

read write:

ALTER TABLESPACE tablespace_name READ WRITE;

--一些表空间的特殊状态

tablespacename onlie read only

system 必须online 必须read write

sysaux 可以offline 不能read only

undo 不能offline 不能read only

--查看表空间的状态

SQL> select tablespace_name,file#,v.status,v.enabled from dba_data_files d,

2 v$datafile v

3 where d.file_id = v.file#;

TABLESPACE_NAME FILE# STATUS ENABLED

------------------------------ ---------- ------- ----------

SYSTEM 1 SYSTEM READ WRITE

UNDOTBS1 2 ONLINE READ WRITE

SYSAUX 3 ONLINE READ WRITE

USERS 4 ONLINE READ WRITE

EXAMPLE 5 ONLINE READ WRITE

TBS1 6 ONLINE READ WRITE

--几种状态的相互转换的演示

--将表空间置为只读

SQL> alter tablespace users read only;

Tablespace altered.

SQL> update scott.emp set sal = sal &#43; 50 where ename = 'SCOTT'; --置为只读后不可更新

update scott.emp set sal = sal &#43; 50 where ename = 'SCOTT'

*

ERROR at line 1:

ORA-00372: file 4 cannot be modified at this time

ORA-01110: data file 4: '/u01/app/oracle/oradata/orcl/users01.dbf'

SQL> select tablespace_name,file#,v.status,v.enabled from dba_data_files d,

2 v$datafile v

3 where d.file_id = v.file# and tablespace_name = 'USERS';

TABLESPACE_NAME FILE# STATUS ENABLED

------------------------------ ---------- ------- ----------

USERS 4 ONLINE READ ONLY

--将表空间置为脱机

SQL> alter tablespace users offline;

Tablespace altered.

SQL> update scott.emp set sal = sal &#43; 100 where ename = 'SCOTT';/*置为脱机后不可更新*/

update scott.emp set sal = sal &#43; 100 where ename = 'SCOTT'

*

ERROR at line 1:

ORA-00376: file 4 cannot be read at this time

ORA-01110: data file 4: '/u01/app/oracle/oradata/orcl/users01.dbf'

--将表空间置为联机

SQL> alter tablespace users online;

Tablespace altered.

SQL> select tablespace_name,file#,v.status,v.enabled from dba_data_files d,

2 v$datafile v

3 where d.file_id = v.file# and tablespace_name = 'USERS';

TABLESPACE_NAME FILE# STATUS ENABLED

------------------------------ ---------- ------- ----------

USERS 4 ONLINE READ ONLY

--注意,readonly 状态下的表空间可以删除数据,仅仅是不能插入或更新数据,如下

SQL> delete from scott.emp where ename = 'SCOTT';

SQL> rollback;

Rollback complete.

--将表空间置为读写状态

SQL> alter tablespace users read write;

Tablespace altered

--表空间数据文件的重命名或重定位

--方法一,在open状态下且处于archive模式:

--1、查出数据文件位置和所属的表空间

select TABLESPACE_NAME,FILE_NAME,BYTES/1024/1024 "SIZE(MB)"

from dba_data_files;

--2、将数据文件所在的表空间离线

alter tablespace uu offline;

--3、在操作系统下将文件移动到另外一个位置,或重命名(建议使用cp)

host mv /opt/oracle/oradata/orcl/tt.dbf /disk9/uu1.dbf

--4、修改控制文件,将数据文件的指针重新指向到另一个位置(执行rename)

alter tablespace uu rename datafile '/opt/oracle/oradata/orcl/tt.dbf'

to '/disk9/uu1.dbf';

--5、表空间在线

alter tablespace uu online

--方法二,不能脱机的表空间

--1、关闭数据库,再启动到mount状态

startup mount

--2、在操作系统下,移动或重命名文件

host mv /opt/oracle/oradata/orcl/tt.dbf /disk9/uu1.dbf

--3、修改控制文件

alter database rename file '/disk8/uu.dbf' to '/disk8/uu2.dbf';

--4、打开数据库

alter database open;

/*

删除表空间:

意味着表空间和数据文件的信息从数据库中删除,同时也应该将相应的操作系统文件删除

不能删除的表空间

系统表空间

有活动回滚段的表空间

默认临时/永久表空间

命令: */

DROP TABLESPACE tablespace_name [INCLUDING CONTENTS [AND DATAFILES]]

INCLUDING CONTENTS -- 删除表空间及所有段

INCLUDING CONTENTS [AND DATAFILES] --删除表空间、所有段、数据文件、同时删除系统中的物理文件

--限制某个用户对表空间的使用:

ALTER USER user_name QUOTA n ON tablespace_name;

ALTER USER scott QUOTA 10m on UU;

--取消限制

ALTER USER user_name QUOTA UNLIMITED ON tablespace_name;

GRANT UNLIMITED TABLESPACE TO user_name;

--单个数据文件离线:

--1、查看有哪些数据文件

SELECT name FROM v$datafile;

--2、离线

ALTER DATABASE DATAFILE '...' OFFLINE;

--3、在线

ALTER DATABASE DATAFILE '... ' ONLINE

-- 有可能提示要进行介质恢复:

RECOVER DATAFILE '...'

ALTER DATABASE RECOVER TABLESPACE tablespace_name;

-- 之后再将文件再线

--重命名数据文件(同前面移动数据文件一样)

--获取表空间和数据文件信息

--表空间信息

dba_tablespaces

v$tablespace

--数据文件信息

dba_data_files

v$datafile

--临时数据文件信息

dba_temp_files

v$tempfile

--查看系统默认的表空间及临时表空间:

SQL> select PROPERTY_NAME,PROPERTY_VALUE from database_properties

2 where PROPERTY_NAME like 'DEFAULT%';

--修改改系统的默认表空间:

SQL>ALTER DATABASE DEFAULT TABLESPACE tablespace_name

--修改系统的默认临时表空间:

SQL>ALTER DATABASE DEFAULT TEMPORARY TABLESPACE tablespace_name

--查看用户默认表空间:

SQL>select USERNAME,USER_ID,DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE from dba_users;

--修改用户默认表空间:

SQL>ALTER USER user_name DEFAULT TABLESPACE tablespace_name

--查看表空间的使用情况:

dba_data_files;

dba_free_space;

--例:查每个表空间的剩余空间

SQL> select tablespace_name,sum(bytes/1024/1024)

2 from dba_free_space group by tablespace_name;

/*

五、数据文件

数据文件是数据库中最重要的一个要求,是所有的数据库内容存放的地方

datafile是按照表空间为组织单位,表空间的构成是按照段区块为层次---数据文件的逻辑结构

datafile就是表空间的物理文件。

datafile中的内容是通过dbwrdata buffer cache中的dirty buffer data 写入的

dbwr触发:

ckpt触发,dirty buffer 到一定量的时候,data buffer caceh 的内存空间快用完了

查询空闲内存空间超时,表空间offline/read only,表的drop, truncate 开始执备份表空间的时候 */

--查看数据文件

SQL> select file# ,name,status,enabled,bytes/1024/1024 M from v$datafile;

FILE# NAME STATUS ENABLED M

---------- -------------------------------------------------- ------- ---------- ----------

推荐阅读
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 构建基于BERT的中文NL2SQL模型:一个简明的基准
    本文探讨了将自然语言转换为SQL语句(NL2SQL)的任务,这是人工智能领域中一项非常实用的研究方向。文章介绍了笔者在公司举办的首届中文NL2SQL挑战赛中的实践,该比赛提供了金融和通用领域的表格数据,并标注了对应的自然语言与SQL语句对,旨在训练准确的NL2SQL模型。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细介绍了美国最具影响力的十大财团,包括洛克菲勒、摩根、花旗银行等。这些财团在历史发展过程中逐渐形成,并对美国的经济、政治和社会产生深远影响。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • 深入探讨CPU虚拟化与KVM内存管理
    本文详细介绍了现代服务器架构中的CPU虚拟化技术,包括SMP、NUMA和MPP三种多处理器结构,并深入探讨了KVM的内存虚拟化机制。通过对比不同架构的特点和应用场景,帮助读者理解如何选择最适合的架构以优化性能。 ... [详细]
  • 解决JAX-WS动态客户端工厂弃用问题并迁移到XFire
    在处理Java项目中的JAR包冲突时,我们遇到了JaxWsDynamicClientFactory被弃用的问题,并成功将其迁移到org.codehaus.xfire.client。本文详细介绍了这一过程及解决方案。 ... [详细]
  • 本题通过将每个矩形视为一个节点,根据其相对位置构建拓扑图,并利用深度优先搜索(DFS)或状态压缩动态规划(DP)求解最小涂色次数。本文详细解析了该问题的建模思路与算法实现。 ... [详细]
  • 本题探讨如何通过最大流算法解决农场排水系统的设计问题。题目要求计算从水源点到汇合点的最大水流速率,使用经典的EK(Edmonds-Karp)和Dinic算法进行求解。 ... [详细]
  • 在网页开发中,页面加载速度是一个关键的用户体验因素。为了提升加载效率,避免在PageLoad事件中进行大量数据绑定操作,可以采用异步加载和特定控件来优化页面加载过程。 ... [详细]
  • 本文介绍了一种根据用户选择动态切换屏幕界面的方法,通过定义不同的选择块(Selection Block),实现灵活的用户交互体验。 ... [详细]
  • 本题探讨了在一个有向图中,如何根据特定规则将城市划分为若干个区域,使得每个区域内的城市之间能够相互到达,并且划分的区域数量最少。题目提供了时间限制和内存限制,要求在给定的城市和道路信息下,计算出最少需要划分的区域数量。 ... [详细]
  • 本文详细探讨了HTML表单中GET和POST请求的区别,包括它们的工作原理、数据传输方式、安全性及适用场景。同时,通过实例展示了如何在Servlet中处理这两种请求。 ... [详细]
  • 在现代Web应用中,当用户滚动到页面底部时,自动加载更多内容的功能变得越来越普遍。这种无刷新加载技术不仅提升了用户体验,还优化了页面性能。本文将探讨如何实现这一功能,并介绍一些实际应用案例。 ... [详细]
author-avatar
以下犯上LOVE_845
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有