当前位置: 首页 > news >正文

做网站ie缓存豆瓣网站模板

做网站ie缓存,豆瓣网站模板,网站首页原型图怎么做,个人网站相册怎么做作者:IvanCodes 日期:2025年6月10日 专栏:Oracle教程 这次我们将深入学习如何管理数据库对象的核心——表空间 (Tablespace) 和 表 (Table)。理解如何创建、修改和删除这些对象,是进行有效数据存储和管理的基础。 一、表空间 (Tab…

作者:IvanCodes
日期:2025年6月10日
专栏:Oracle教程

这次我们将深入学习如何管理数据库对象的核心——表空间 (Tablespace)表 (Table)。理解如何创建、修改和删除这些对象,是进行有效数据存储和管理基础

在这里插入图片描述
在这里插入图片描述

一、表空间 (Tablespace):数据的逻辑容器

1.1 什么是表空间?
表空间是Oracle数据库中一个重要的逻辑存储结构。它将数据库的物理存储 (即数据文件) 与逻辑对象 (如表、索引) 分离开来。你可以把它想象成一个逻辑上的“文件夹”或“磁盘分区”,数据库对象 (如表) 创建时会被指定存储某个表空间中。

1.2 表空间的作用:

  • 组织数据:可以将相关的数据库对象组织在同一个表空间中,便于管理。
  • 控制磁盘空间分配:可以为不同的表空间分配不同的物理数据文件,从而控制大小和增长
  • 备份与恢复:表空间是备份和恢复基本单位之一,可以对单个表空间进行联机或脱机操作。
  • 性能优化:可以将I/O密集型的对象分布在不同物理磁盘上的不同表空间中,改善性能

1.3 创建表空间 (CREATE TABLESPACE)

基本语法格式:

CREATE TABLESPACE tablespace_name
DATAFILE 'datafile_path_and_name' SIZE initial_size
[AUTOEXTEND ON [NEXT increment_size [MAXSIZE max_size | UNLIMITED]]]
[EXTENT MANAGEMENT LOCAL [AUTOALLOCATE | UNIFORM SIZE uniform_extent_size]]
[SEGMENT SPACE MANAGEMENT AUTO | MANUAL];

代码案例:创建一个名为 app_data_ts 的表空间

CREATE TABLESPACE app_data_ts
DATAFILE '/u01/app/oracle/oradata/ORCL/app_data01.dbf' SIZE 100M
AUTOEXTEND ON NEXT 50M MAXSIZE 500M
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
SEGMENT SPACE MANAGEMENT AUTO;

(路径 /u01/app/oracle/oradata/ORCL/ 请根据实际环境替换)

1.4 修改表空间 (ALTER TABLESPACE)
代码案例:为 app_data_ts 表空间添加数据文件

ALTER TABLESPACE app_data_ts
ADD DATAFILE '/u01/app/oracle/oradata/ORCL/app_data02.dbf' SIZE 50M;

代码案例:修改 app_data01.dbf 数据文件大小

ALTER DATABASE DATAFILE '/u01/app/oracle/oradata/ORCL/app_data01.dbf' RESIZE 200M;

代码案例:设置表空间脱机/联机

ALTER TABLESPACE app_data_ts OFFLINE;
ALTER TABLESPACE app_data_ts ONLINE;

1.5 删除表空间 (DROP TABLESPACE)
语法格式:

DROP TABLESPACE tablespace_name
[INCLUDING CONTENTS [AND DATAFILES]]
[CASCADE CONSTRAINTS];

代码案例:删除 app_data_ts (假设为空)

DROP TABLESPACE app_data_ts;

代码案例:删除 app_data_ts 及其内容和物理文件

DROP TABLESPACE app_data_ts INCLUDING CONTENTS AND DATAFILES;

二、表 (Table):结构化数据的核心

2.1 创建表 (CREATE TABLE)

基本语法格式:

CREATE TABLE [schema_name.]table_name (
column_name1 datatype [DEFAULT default_value] [column_constraint1 ...],
column_name2 datatype [DEFAULT default_value] [column_constraint2 ...],
...
[table_constraint1, ...]
)
[TABLESPACE tablespace_name]
[storage_clauses ...];

代码案例:创建一个 products

CREATE TABLE products (
product_id NUMBER(10) CONSTRAINT pk_product PRIMARY KEY,
product_name VARCHAR2(100) CONSTRAINT nn_product_name NOT NULL,
category_id NUMBER(5),
unit_price NUMBER(8,2) CONSTRAINT ck_product_price CHECK (unit_price >= 0),
supplier_id NUMBER(10),
entry_date DATE DEFAULT SYSDATE,
CONSTRAINT uq_product_name UNIQUE (product_name)
)
TABLESPACE app_data_ts;

2.2 修改表 (ALTER TABLE)
常见操作:

  • 添加列
ALTER TABLE products
ADD (stock_quantity NUMBER(5) DEFAULT 0);
  • 修改列定义
ALTER TABLE products
MODIFY (product_name VARCHAR2(150));
  • 删除列
ALTER TABLE products
DROP COLUMN supplier_id;
  • 重命名列
ALTER TABLE products
RENAME COLUMN entry_date TO creation_date;
  • 添加/删除约束
-- 添加外键 (假设 categories 表和 category_id 主键已存在)
ALTER TABLE products
ADD CONSTRAINT fk_product_category FOREIGN KEY (category_id) REFERENCES categories(category_id);-- 删除唯一约束
ALTER TABLE products
DROP CONSTRAINT uq_product_name;
  • 重命名表
RENAME products TO items_inventory;

2.3 删除表 (DROP TABLE)
语法格式:

DROP TABLE [schema_name.]table_name [CASCADE CONSTRAINTS] [PURGE];

代码案例:删除 items_inventory

DROP TABLE items_inventory CASCADE CONSTRAINTS;

2.4 清空表 (TRUNCATE TABLE)
语法格式:

TRUNCATE TABLE [schema_name.]table_name [DROP STORAGE | REUSE STORAGE];

代码案例:清空 items_inventory 表 (假设已重命名回来或重新创建了products)

TRUNCATE TABLE products;

本章小结:
本章我们重点学习了Oracle中表空间管理操作。掌握这些DDL语句构建和维护数据库逻辑结构核心技能


练习题 (共10道)

  1. 创建表空间:编写SQL语句创建一个名为 user_data_ts 的表空间,数据文件为 /u02/oradata/DBNAME/user_data01.dbf (替换DBNAME),初始大小50M,允许自动扩展,每次10M,最大200M。区管理本地自动分配,段空间自动管理。
  2. 创建用户表:在 user_data_ts 表空间中创建一张名为 app_users 的表,包含列:user_id (NUMBER(8), 主键, 约束名 pk_appuser), username (VARCHAR2(50), 唯一, 非空, 约束名 uq_appuser_uname, nn_appuser_uname), email (VARCHAR2(100), 唯一, 约束名 uq_appuser_email), registration_date (DATE, 默认系统当前日期)。
  3. 添加数据文件到表空间:为 user_data_ts 表空间添加一个新的数据文件 /u02/oradata/DBNAME/user_data02.dbf,大小20M。
  4. 修改表 - 添加列:为 app_users 表添加一个新列 last_login_ip (VARCHAR2(15))。
  5. 修改表 - 修改列类型:将 app_users 表的 email 列长度修改为120个字符。
  6. 修改表 - 添加CHECK约束:为 app_users 表添加一个名为 ck_appuser_username_len 的检查约束,确保 username 的长度至少为3个字符。
  7. 修改表 - 重命名列:将 app_users 表的 registration_date 列重命名为 join_date
  8. 删除约束:删除 app_users 表上的唯一约束 uq_appuser_email
  9. 删除表并保留回收站:写出删除 app_users 表的SQL语句,确保它进入回收站 (如果回收站功能开启)。
  10. 彻底删除表空间:写出彻底删除 user_data_ts 表空间及其所有内容和物理数据文件的SQL语句 (假设里面可能还有其他对象)。

答案与解析:

  1. 创建表空间解析:
CREATE TABLESPACE user_data_ts
DATAFILE '/u02/oradata/DBNAME/user_data01.dbf' SIZE 50M
AUTOEXTEND ON NEXT 10M MAXSIZE 200M
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
SEGMENT SPACE MANAGEMENT AUTO;

解析:创建了指定大小、自动扩展参数、区及段管理方式的表空间。

  1. 创建用户表解析:
CREATE TABLE app_users (
user_id NUMBER(8) CONSTRAINT pk_appuser PRIMARY KEY,
username VARCHAR2(50) CONSTRAINT uq_appuser_uname UNIQUE CONSTRAINT nn_appuser_uname NOT NULL,
email VARCHAR2(100) CONSTRAINT uq_appuser_email UNIQUE,
registration_date DATE DEFAULT SYSDATE
)
TABLESPACE user_data_ts;

解析:定义了各列的数据类型和约束,包括主键、唯一、非空和默认值,并指定了表空间。

  1. 添加数据文件到表空间解析:
ALTER TABLESPACE user_data_ts
ADD DATAFILE '/u02/oradata/DBNAME/user_data02.dbf' SIZE 20M;

解析:为现有表空间增加了物理存储容量。

  1. 修改表 - 添加列解析:
ALTER TABLE app_users
ADD (last_login_ip VARCHAR2(15));

解析:向表中添加了一个新的属性列。

  1. 修改表 - 修改列类型解析:
ALTER TABLE app_users
MODIFY (email VARCHAR2(120));

解析:修改了email列的最大长度,允许存储更长的邮箱地址。

  1. 修改表 - 添加CHECK约束解析:
ALTER TABLE app_users
ADD CONSTRAINT ck_appuser_username_len CHECK (LENGTH(username) >= 3);

解析:增加了对username字段长度的业务规则校验。

  1. 修改表 - 重命名列解析:
ALTER TABLE app_users
RENAME COLUMN registration_date TO join_date;

解析:更改了列的名称,使其更符合业务语义。

  1. 删除约束解析:
ALTER TABLE app_users
DROP CONSTRAINT uq_appuser_email;

解析:移除了对email列的唯一性要求。

  1. 删除表并保留回收站解析:
DROP TABLE app_users;

解析:默认情况下 (如果回收站开启且未指定PURGE),DROP TABLE 会将表放入回收站。

  1. 彻底删除表空间解析:
DROP TABLESPACE user_data_ts INCLUDING CONTENTS AND DATAFILES;

解析:此命令会删除表空间、其中所有对象段以及操作系统层面的物理数据文件,操作不可逆,需谨慎。

http://www.dtcms.com/a/480976.html

相关文章:

  • 音视频网站建设可行性报告如何编辑wordpress
  • 门户网站建设工序android购物商城源码
  • 建筑工程类网站怎么用ppt做网站设计
  • 搜索栏搜索网站?热?文公众号开发信息
  • 网站域名格式贵阳app开发公司哪家强
  • 为企业建网站过时了产品宣传片公司
  • 企业主题wordpress 含演示数据seo关键词seo排名公司
  • jsp网站搭建wordpress可视化编辑器插件
  • 网站建设经验交流材料专业购物网站建设哪家好
  • 沈阳网站备案asp.net 3.5网站开发全程解析
  • 如何做彩票网站wordpress如何实现支付功
  • 网站精简布局公司调查公司
  • 工商局网站怎么做增项wordpress做直播网站吗
  • 爱站网查询龙岩网上房地产
  • 广州电商网站建设wordpress 随机图文
  • 长春网站建设方案托管律师事务所网站设计
  • 全国水利建设市场信用信息平台门户网站申请域名流程后怎样做网站
  • html5做网站心得体会湖北建设厅行政服务中心网站
  • 17网站一起做网店质量怎么样网站官网
  • 购物网站类型团队拓展口号
  • wordpress无法显示登陆南京seo排名扣费
  • 自建网站赚钱需求网站建设
  • 秦皇岛网站制作专家教你简单建站动漫是怎么制作的
  • 做请柬网站gate网站合约怎么做空
  • 杭州建设网站 网站建设线上推广方式和介绍
  • 购物网站建立福建网站建设价格
  • 网站本地环境搭建软件沧州什么网最好
  • 嘉兴企业自助建站网站怎么制作教程
  • 找个免费的网站这么难吗怎样免费建企业网站
  • 玉雕网站建设小程序源码库