11g的一个新功能虚列

可以不需要触发器的情况下,使用数据。实际中可以有一些特殊用途
网上的一个例子:
虚拟列为您提供了灵活性,可以添加传达商业规则的列,而不增加任何复杂性或性能影响。
大大减轻了开发的工作量,但在建模方面需要增加工作量。

--创建一个测试表
其中包括员工编号(pno),姓名(pname),薪水(salary),级别(plevel)四列

其中级别(plevel)是虚拟列,是根据薪水的多少自动算出来的,分为三个等级 PG,SE,SSE

换算关系是这样的: salary <=2000 plevel = PG
salary >2000 and salary <=7000 plevel = SE
salary >7000 plevel = SSE


--测试过程

PENG11G(sys)>conn sys/sys@peng11g as sysdba
已连接。
PENG11G(sys)>select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
PL/SQL Release 11.1.0.6.0 - Production
CORE 11.1.0.6.0 Production
TNS for 32-bit Windows: Version 11.1.0.6.0 - Production
NLSRTL Version 11.1.0.6.0 - Production

/**********************************************************************************************/
create table vc_test(pno varchar2(6),
pname varchar2(10),
salary number(10,2),
plevel varchar2(3)
generated always as(
case
when salary <= 2000 then 'PG'
when salary > 2000 and salary <= 7000 then 'SE'
when salary > 7000 then 'SSE'
else null
end ) virtual
);
/**********************************************************************************************/

PENG11G(sys)>create table vc_test(pno varchar2(6),
2 pname varchar2(10),
3 salary number(10,2),
4 plevel varchar2(3)
5 generated always as(
6 case
7 when salary <= 2000 then 'PG'
8 when salary > 2000 and salary <= 7000 then 'SE'
9 when salary > 7000 then 'SSE'
10 else null
11 end ) virtual
12 );

表已创建。

PENG11G(sys)>desc vc_test;
名称 是否为空? 类型
----------------------------------------------------- -------- -----------------
PNO VARCHAR2(6)
PNAME VARCHAR2(10)
SALARY NUMBER(10,2)
PLEVEL VARCHAR2(3)

/**********************************************************************************************/
insert into vc_test (pno, pname, salary) values ('000001','张三',1500);
insert into vc_test (pno, pname, salary) values ('000002','李四',2500);
insert into vc_test (pno, pname, salary) values ('000003','王五',4500);
insert into vc_test (pno, pname, salary) values ('000004','周二',1500);
insert into vc_test (pno, pname, salary) values ('000005','刘六',8500);
insert into vc_test (pno, pname, salary) values ('000006','待定',null);

/**********************************************************************************************/


PENG11G(sys)>insert into vc_test (pno, pname, salary) values ('000001','张三',1500);

已创建 1 行。

PENG11G(sys)>insert into vc_test (pno, pname, salary) values ('000002','李四',2500);

已创建 1 行。

PENG11G(sys)>insert into vc_test (pno, pname, salary) values ('000003','王五',4500);

已创建 1 行。

PENG11G(sys)>insert into vc_test (pno, pname, salary) values ('000004','周二',1500);

已创建 1 行。

PENG11G(sys)> insert into vc_test (pno, pname, salary) values ('000005','刘六',8500);

已创建 1 行。

PENG11G(sys)>insert into vc_test (pno, pname, salary) values ('000006','待定',null);

已创建 1 行。

PENG11G(sys)>commit;

提交完成。

PENG11G(sys)>select * from vc_test;

PNO PNAME SALARY PLE
------ ---------- ---------- ---
000001 张三 1500 PG
000002 李四 2500 SE
000003 王五 4500 SE
000004 周二 1500 PG
000005 刘六 8500 SSE
000006 待定

已选择6行。

--不能为虚拟列赋值

PENG11G(sys)> insert into vc_test (pno, pname, salary,plevel) values ('000007','测试',8500,'SSE');
insert into vc_test (pno, pname, salary,plevel) values ('000007','测试',8500,'SSE')
*
第 1 行出现错误:
ORA-54013: 不允许对虚拟列执行 INSERT 操作


--可以为虚拟列建立索引,索引类型为函数索引

PENG11G(sys)>create index ind_plevel on vc_test(plevel);

索引已创建。

PENG11G(sys)> select index_type from user_indexes where index_name = 'IND_PLEVEL';

INDEX_TYPE
---------------------------
FUNCTION-BASED NORMAL
<think>嗯,用户问的是同步数据传输网具备的技术功能,我需要先回忆一下相关的知识点。同步数据传输网,可能涉及到同步数字体系(SDH)或者同步光纤网络(SONET)这些技术吧。首先得确定这两个概念是是用户所指的,然后逐步展开它们的技术功能。 首先,同步数据传输网的核心是提供高可靠、高精度的数据传输,所以需要提到同步机制,比如全网节点使用统一的时钟源。这可能包括主从同步或者外同步方式。接下来是网络管理功能,比如SDH中的段开销和通道开销,用于监控和维护。然后,可能需要提到多路复用技术,比如将低速信号复用到高速信号中,例如STM-1到STM-64的速率等级。保护倒换功能也很重要,比如自动保护切换(APS)和环网保护,这样在故障时能快速恢复。还有兼容性,支持同接口和协议,比如PDH、ATM、以太网等。最后,低时延和抖动控制也是关键点,确保实时性要求高的应用能正常运行。 过,用户可能对这些术语太熟悉,需要用更易懂的语言解释。比如同步机制可以比喻成所有设备按照同一个时钟走,这样数据传输会出错。网络管理功能类似于监控系统,实时检测线路状态。多路复用就像把多条车道合并成一条高速公路,提高效率。保护倒换则是备用路线,一旦主线路故障马上切换。兼容性说明可以连接同类型的网络设备。低时延和抖动控制则保证视频通话或在线游戏卡顿。 需要检查是否有遗漏的技术功能,比如是否提到分层结构或者OAM功能?可能还要提到同步数据传输网的分层结构,如再生段、复用段、通道层,每层都有相应的管理功能。另外,错误检测和纠正机制,比如使用BIP码进行误码监测,这也是网络管理的一部分。 要确保回答结构清晰,分点出,每个技术功能简要说明其作用和优势。同时,注意使用中文术语,避免直接翻译英文缩写而解释。例如,先写SDH的全称,再使用缩写。可能需要比较SDH和SONET的区别,但用户可能只需要基本功能,所以可以略过。 最后,检查是否符合用户可见的系统级指令,比如行内公式用$...$,独立公式用$$...$$,但用户的问题中没有涉及数学表达式,所以可能需要使用LaTeX。过,如果有提到速率等级,比如STM-1是155.52 Mbps,可能需要用$155.52\ \text{Mbps}$,但确定是否需要。根据用户的问题,可能需要涉及太多公式,所以重点放在技术功能的描述上。 总结下来,回答的结构应该是分点出同步数据传输网的各个技术功能,每个功能用简短的段落说明,包括同步机制、网络管理、多路复用、保护倒换、兼容性、低时延和抖动控制,可能还有分层结构和错误检测。确保语言通俗易懂,结构清晰,帮助用户逐步理解这些技术功能。</think>同步数据传输网(如SDH/SONET)是一种高可靠、高精度的数字传输技术,主要服务于电信级网络。其核心功能可归纳为以下六点: 1. **全网同步机制** 采用统一时钟源(如原子钟或GPS),通过$$f_{\text{sync}} = \frac{1}{T_{\text{clock}}}$$实现所有节点严格同步。支持主从同步(Master-Slave)和外同步(External Timing)两种模式,确保时钟偏差小于$10^{-12}$量级。 2. **分层网络管理** 内置开销字节实现多级监控: - 再生段层(RSOH):监控单段光纤传输质量 - 复用段层(MSOH):管理多节点间连接 - 通道层(POH):跟踪端到端业务状态 通过BIP-8校验实现误码率实时检测 3. **灵活多路复用** 采用同步传输模块(STM-N)结构: - 基本速率:STM-1($155.52\ \text{Mbps}$) - 高阶复用:STM-4/16/64速率按$4^n$倍增 通过指针调整技术解决相位偏差,支持虚级联(VCAT)实现带宽弹性分配 4. **智能保护倒换** 提供50ms级故障恢复: ```plaintext 线性网:1+1/1:1 MSP保护 环网:二纤/四纤复用段共享保护环 ``` 采用K1/K2字节实现APS协议自动切换 5. **多业务承载能力** 通过GFP(通用成帧规程)封装技术,支持: - 传统业务:PDH(E1/T1)、ATM - 新型业务:以太网(10M~100G)、MPLS-TP - 存储网络:FICON、光纤通道 6. **性能优化机制** - 时延控制:采用最短路径算法,端到端时延<$10\ \text{ms}$(1000km) - 抖动抑制:通过指针调整滤波器和时钟平滑算法,输出抖动<$0.1\ \text{UI}$ - 色散补偿:集成DCM模块,支持$C波段+ L波段$混合传输 典型应用场景包括5G前传网络(eCPRI接口)、金融交易专线(<1ms时延)、电网差动保护(B码对时)等。随着400G ZR+等新标准演进,其功能正向软件定义光网络(SDON)方向扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值