Yashan DB 对象管理
一、什么是数据库对象
数据库对象是数据库里面用来存储和指向数据的各种概念和结构的总称。数据库支持的对象包括:
• 表:表是一个逻辑概念,是数据库组织管理数据的基本单位。
• 索引:索引是建立在表上的逻辑对象,索引可以提高表数据的访问查询效率。
• 视图:视图是一种虚定义的逻辑对象,结构和数据是建立在对表的查询基础之上的。
• 序列:序列可以产生一组等间隔的数值,主要用于表的主键的自增。
• 同义词:数据对象的别名,与其代表的数据对象是一种映射关系。
• 存储过程:一组为了完成特定功能的SQL/PLSQL语句集。
• 触发器:一种特殊类型的存储过程,通过指定的事件触发执行。
二、管理对象
(一)管理表
• 表概述:一个表描述了一个实体,表定义为列的集合。表中的每一列都设计为存储某种类型的信息,表上可以有约束、默认值等用于确保数据的有效性。
• 建表语法:
SQL> CREATE TABLE [user_name.]table_name(column_name1 data_type(size) [constraints],column_name2 data_type(size) [constraints],column_name3 data_type(size) [constraints],....);
• `user_name`:用户名,如果省略,默认是创建在当前连接用户下。
• `table_name`:表名。
• `column_name1、column_name2、column_name3`:列名。
• `data_type`:数据类型(例如`VARCHAR2`、`CHAR`等)。
• `size`:列的最大长度(例如`VARCHAR2(10)`、`CHAR(10)`等)。
• `constraints`:限制加入的表约束,如:`NOT NULL`、`DEFAULT`等。
• 修改表:
• 修改表名:
SQL> ALTER TABLE area_04 RENAME TO area_05;
• 修改列名:
SQL> ALTER TABLE area_05 RENAME COLUMN area_name TO area_name_01;
• 修改列长度:
SQL> ALTER TABLE area_05 MODIFY area_name_01 VARCHAR(80);
• 添加字段:
SQL> ALTER TABLE area_05 ADD NUM number(20);
• 删除字段:
SQL> ALTER TABLE area_05 DROP COLUMN num;
(二)管理索引
• 索引的作用:索引是用来快速访问数据的一种数据结构。根据业务合理的创建索引可以提高查询的效率。
• 创建索引语法:
SQL> CREATE INDEX [user_name.] index_name ON table_name(column_name)
• `user_name`:用户名,如果省略,默认是创建在当前连接用户下。
• `index_name`:索引名。
• `table_name`:表名。
• `column_name`:列名。
• 创建索引:
SQL> CREATE INDEX idx_area_06_info_1 ON area_06 (area_no);
• 修改索引:
• 让索引对优化器不可见:
SQL> ALTER INDEX idx_area_06_info_1 INVISIBLE;
• 让索引对优化器可见:
SQL> ALTER INDEX idx_area_06_info_1 VISIBLE;
• 删除索引:
SQL> DROP INDEX idx_area_06_info_1;
• 索引重建:
SQL> ALTER INDEX idx_area_06_info_1 REBUILD;
• 设置索引不可用:
SQL> ALTER INDEX idx_area_06_info_1 UNUSABLE;
(三)管理视图
• 视图的定义:用户可以将一个使用频率较高的查询语句定义为一个持久化的对象,该持久化对象称为视图。
• 视图的作用:
• 简化查询,使用视图代替使用频率较高的查询,特别是复杂查询,可以降低用户编写SQL的复杂度。
• 解耦合,在保证视图列的名称、数据类型不变的前提下,修改基表其他元素的定义不影响视图的正常使用。
• 权限隔离,视图作为一个独立的对象,用户在视图上的权限与在基表上的权限是分离的。合理地设计视图列及权限,可以有效避免基表中的全部信息完全暴露给只需部分信息(视图列)的用户。
• 创建视图语法:
SQL> CREATE [OR REPLACE] VIEW view_name AS subquery;
• `OR REPLACE`:如果已经存在了就替换已经存在的。
• `view_name`:视图名。
• `subquery`:查询语句。
• 创建视图:
SQL> CREATE OR REPLACE VIEW v_area_06 AS SELECT area_no,area_name FROM area_06;
• 查询视图:
SQL> SELECT * FROM v_area_06;
• 查询视图的字段信息:
SQL> DESC v_area_06;
• 删除视图:
SQL> DROP VIEW v_area_06;
注意:如果删除基表,则视图也会变得不可用。
三、数据库对象相关视图
• 对象查询相关视图:
• `DBA_OBJECTS`:显示所有的对象。
• 表相关视图:
• `DBA_TABLES`:显示所有的表。
• 索引相关视图:
• `DBA_INDEXES`:显示所有的索引。
• 视图相关视图:
• `DBA_VIEWS`:显示所有的视图。
• 查询视图:
• 查询所有对象:
SQL> SELECT owner,object_name,object_type,status FROM DBA_OBJECTS WHERE owner='SALES';
• 查询所有表:
SQL> SELECT owner,table_name,tablespace_name FROM DBA_TABLES WHERE owner='SALES';
• 查询所有索引:
SQL> SELECT owner,index_name,table_name FROM DBA_INDEXES WHERE owner='SALES';
• 查询视图对象信息:
SQL> SELECT owner,view_name,text FROM DBA_VIEWS WHERE owner='SALES';
四、小结
• 什么是数据库对象:表、索引、视图等。
• 管理对象:创建、修改、查看、删除操作。
• 数据库对象相关视图:`DBA_OBJECTS`、`DBA_TABLES`、`DBA_INDEXES`、`DBA_VIEWS`。
相关文章:
Yashan DB 对象管理
一、什么是数据库对象 数据库对象是数据库里面用来存储和指向数据的各种概念和结构的总称。数据库支持的对象包括: • 表:表是一个逻辑概念,是数据库组织管理数据的基本单位。 • 索引:索引是建立在表上的逻辑对象,索…...
《Android 平台架构系统启动流程详解》
目录 一、平台架构模块 1.1 Linux 内核 1.2 硬件抽象层 (HAL) 1.3 Android 运行时 1.4 原生 C/C 库 1.5 Java API 框架 1.6 系统应用 二、系统启动流程 2.1 Bootloader阶段 2.2 内核启动 2.3 Init进程(PID 1) 2.4 Zygote与System Serv…...
强化学习(赵世钰版)-学习笔记(3.最优策略与贝尔曼最优方程)
这是本章在课程中的位置,属于基础工具中的最后一章,主要讨论了最优状态值(Optimal State Value)与最优策略(Optimal Policy),并介绍了对应的计算方法-贝尔曼最优方程(Bellman Optima…...
六十天前端强化训练之第十一天之事件机制超详解析
欢迎来到编程星辰海的博客讲解 目录 一、事件模型演进史 1.1 原始事件模型(DOM Level 0) 1.2 DOM Level 2事件模型 1.3 DOM Level 3事件模型 二、事件流深度剖析 2.1 捕获与冒泡对比实验 2.2 事件终止方法对比 三、事件委托高级应用 3.1 动态元…...
调试正常 ≠ 运行正常:Keil5中MicroLIB的“量子态BUG”破解实录
调试正常 ≠ 运行正常:Keil5中MicroLIB的“量子态BUG”破解实录——从勾选一个选项到理解半主机模式,嵌入式开发的认知升级 📌 现象描述:调试与烧录的诡异差异 在线调试时 程序正常运行 - 独立运行时 设备无响应 ! 编译过程 0 Err…...
基于SpringBoot实现旅游酒店平台功能八
一、前言介绍: 1.1 项目摘要 随着社会的快速发展和人民生活水平的不断提高,旅游已经成为人们休闲娱乐的重要方式之一。人们越来越注重生活的品质和精神文化的追求,旅游需求呈现出爆发式增长。这种增长不仅体现在旅游人数的增加上࿰…...
ArcGIS Pro中字段的新建方法与应用
一、引言 在地理信息系统(GIS)的数据管理和分析过程中,字段操作起着至关重要的作用。 无论是进行地图制作、空间分析还是数据统计,字段都是承载属性信息的基本单元。 ArcGIS Pro作为一款功能强大的GIS软件,为用户提…...
c#面试题12
1.ApplicationPool介绍一下 c#里没有 2.XML 可扩展标记语言,一般以.xml文件格式的形式存在。可用于存储结构化的数据 3.ASP.NET的用户控件 将原始的控件,用户根据需要进行整合成一个新的控件 4.介绍一下code-Behind 即代码后置技术,就是…...
Matlab中快速查找元素索引号
1、背景介绍 在算法设计过程中,有时候需要从一维/二维数组中,快速查找是否某个元素,以及该元素所在的位置。如一维矩阵[1 2 3 4 5 6 6 7 8]所示,元素6所在的位置为6 7。 2、函数测试 matlab中函数find()可以快速查找到指定元素所…...
LabVIEW非线性拟合实现正弦波参数提取
LabVIEW的Nonlinear Curve Fit.vi基于Levenberg-Marquardt算法,能够实现非线性最小二乘拟合,包括正弦波三参数(幅值、频率、相位)的精确求解。该工具适用于非均匀采样、低信噪比信号等复杂场景,但需注意初始参数设置与…...
S19文件格式详解:汽车ECU软件升级中的核心镜像格式
文章目录 引言一、S19文件格式的起源与概述二、S19文件的核心结构三、S19在汽车ECU升级中的应用场景四、S19与其他格式的对比五、S19文件实例解析六、工具链支持与安全考量七、未来趋势与挑战结语引言 在汽车电子控制单元(ECU)的软件升级过程中,S19文件(也称为Motorola S-…...
Redis 缓存穿透、缓存击穿与缓存雪崩详解:问题、解决方案与最佳实践
目录 引言 1. 缓存穿透 1.1 什么是缓存穿透? 示例: 1.2 缓存穿透的原因 1.3 缓存穿透的解决方案 1.3.1 缓存空对象 1.3.2 布隆过滤器(Bloom Filter) 1.3.3 参数校验 2. 缓存击穿 2.1 什么是缓存击穿? 示例&…...
Mamba| Miniforge3 安装和配置
参考教程: B站 教程概要 安装最新的 Mamba,建议通过安装 Miniforge 来实现,因为 Miniforge 默认包含 Mamba。Miniforge 下载:建议使用南京大学镜像站mamba 设置镜像源:清华镜像源修改默认环境安装路径设置 pip 镜像&a…...
Qt入门笔记
目录 一、前言 二、创建Qt项目 2.1、使用向导创建 2.2、最简单的Qt应用程序 2.2.1、main函数 2.2.2、widget.h文件 2.2.3、widget.cpp文件 2.3、Qt按键Botton 2.3.1、创建一个Botton 2.3.2、信号与槽 2.3.3、按键使用信号与槽的方法 2.4、文件Read与Write-QFile类 2…...
C语言每日一练——day_4
引言 针对初学者,每日练习几个题,快速上手C语言。第四天。(连续更新中) 采用在线OJ的形式 什么是在线OJ? 在线判题系统(英语:Online Judge,缩写OJ)是一种在编程竞赛中用…...
下降路径最⼩和(medium)
题目描述: 给你一个 n x n 的 方形 整数数组 matrix ,请你找出并返回通过 matrix 的下降路径 的 最小和 。 下降路径 可以从第一行中的任何元素开始,并从每一行中选择一个元素。在下一行选择的元素和当前行所选元素最多相隔一列(…...
redux_旧版本
reduxjs/toolkit(RTK)是 Redux 官方团队推出的一个工具集,旨在简化 Redux 的使用和配置。它于 2019 年 10 月 正式发布,此文章记录一下redux的旧版本如何使用,以及引入等等。 文件目录如下: 步骤 安装依…...
⭐算法OJ⭐经典题目分类索引(持续更新)
在编程竞赛和算法学习中,Online Judge(OJ)平台是程序员们磨练技能的重要工具。OJ平台上的题目种类繁多,涵盖了从基础数据结构到复杂算法的各个方面。为了更好地理解和掌握这些题目,对其进行分类是非常有必要的。这篇索…...
python之使用scapy扫描本机局域网主机,输出IP/MAC表
安装scapy库 pip install scapy -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple扫描本机局域网的所有主机,输出IP/MAC对于表 # -*- coding: UTF-8 -*- import netifaces from scapy.all import srp from scapy.layers.l2 import ARP, Ether import ipa…...
Spring Boot中@Valid 与 @Validated 注解的详解
Spring Boot中Valid 与 Validated 注解的详解 引言 在Spring Boot应用中,参数校验是确保数据完整性和一致性的重要手段。Valid和Validated注解是Spring Boot中用于参数校验的两个核心注解。本文将详细介绍这两个注解的用法、区别以及代码样例。 Valid注解 功能介…...
18、TCP连接三次握手的过程,为什么是三次,可以是两次或者更多吗【高频】
三次握手的过程: 第一次握手:客户端 向 服务器 发送一个 SYN(也就是同步序列编号报文),请求建立连接。随后,客户端 进入 SYN_SENT 状态;服务器收到 SYN 之后,由 LISTEN 状态变为 SYN…...
Ceph(2):Ceph简介
1 Ceph简介 Ceph使用C语言开发,遵循LGPL协议开源。Sage Weil(Ceph论文发表者)于2011年创立了以Inktank公司主导Ceph的开发和社区维护。2014年Redhat收购inktank公司,并发布Inktank Ceph企业版(ICE)软件,业务场景聚焦云…...
第二篇:CTF常见题型解析:密码学、逆向工程、漏洞利用、Web安全
# 零基础小白入门CTF解题到成为CTF大佬系列文章 ## 第二篇:CTF常见题型解析:密码学、逆向工程、漏洞利用、Web安全 ### 引言 在CTF比赛中,题目类型多种多样,涵盖了网络安全领域的多个方向。掌握这些题型的解题方法,…...
《Python基础教程》附录B笔记:Python参考手册
《Python基础教程》第1章笔记👉https://blog.csdn.net/holeer/article/details/143052930 附录B Python参考手册 Python标准文档是完整的参考手册。本附录只是一个便利的速查表,当你开始使用Python进行编程后,它可帮助你唤醒记忆。 B.1 表…...
linux学习(十三)(shell编程(文字,变量,循环,条件,调试))
Shell 编程 Shell 编程,也称为 shell 脚本,是 Linux作系统不可或缺的一部分。shell 脚本实质上是系统 shell 执行的程序。虽然它可能不如 C 或 C 等编译语言强大,但 shell 编程对于管理级任务、自动执行重复性任务和系统监控非常有效。 大多…...
大模型微调中warmup(学习率预热)是什么
大模型微调中warmup(学习率预热)是什么 在大模型微调中,添加warmup(学习率预热)是指在训练初期逐步增加学习率,避免直接使用高学习率导致参数震荡。 🔧 为什么需要warmup? 大模型参数敏感:预训练模型的参数已接近最优,初期用大学习率可能剧烈扰动参数(如“急刹车…...
wireshark 如何关闭混杂模式 wireshark操作
Fiddler和Wireshark都是进行抓包的工具:所谓抓包就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全。抓包也经常被用来进行数据截取等。黑客常常会用抓包软件获取你非加密的上网数据,然后通过分析&#…...
ChatGPT4.5详细介绍和API调用详细教程
OpenAI在2月27日发布GPT-4.5的研究预览版——这是迄今为止OpenAI最强大、最出色的聊天模型。GPT-4.5在扩大预训练和微调规模方面迈出了重要的一步。通过扩大无监督学习的规模,GPT-4.5提升了识别内容中的模式、建立内容关联和生成对于内容的见解的能力,但…...
centos linux安装mysql8 重置密码 远程连接
1. 下载并安装 MySQL Yum 仓库 从 MySQL 官方网站下载并安装 Yum 仓库配置文件。 # 下载MySQL 8.0的Yum仓库包 wget https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm # 安装Yum仓库包 sudo rpm -ivh mysql80-community-release-el7-5.noarch.rpm2. 启…...
AWS 如何导入内部SSL 证书
SSL 证书的很重要的功能就是 HTTP- > HTTPS, 下面就说明一下怎么导入ssl 证书,然后绑定证书到ALB. 以下示例说明如何使用 AWS Management Console 导入证书。 从以下位置打开 ACM 控制台:https://console.aws.amazon.com/acm/home。如果您是首次使用 ACM,请查找 AWS Cer…...
