在oracle创建表的时候,如何定义字符型的列,在插入数据之后,自动将其转换成大写或小写?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在oracle创建表的时候,如何定义字符型的列,在插入数据之后,自动将其转换成大写或小写?相关的知识,希望对你有一定的参考价值。

查询时用upper或者lower除外,希望是在数据库级别就定义好了。

可以在创建好表之后,创建触发器,当插入数据时触发操作:
create or trigger tr_insert
before insert or update on table_name
begin
when insert or update then
upper(你要插入的数据) --这里的数据应该是定义好的变量
end;
参考技术A 不好意思

Oracle外键需要建索引吗?

关于Oracle中的外键,首先要说明一下。

1. 除非已定义了父表主键或唯一键约束,否则oracle将不允许创建子表的外键约束。

2. 在定义外键约束时,oracle不会自动创建索引,所以必须手动在与外键约束相关的列上创建索引。

所以我们这里要研究的是否需要在子表中创建索引,因为父表中对应的列是一定有索引的。

如果子表中的外键不创建索引,将导致两个问题。

1. 影响性能。 如果子表外键没有创建索引,那么当父表查询关联子表时,子表将进行全表扫描。

2. 影响并发。 如果子表外键没有创建索引,那么在子表进行DML操作时,将会锁住整个父表。

 

所以,我们应该尽量考虑在外键上面创建索引。

以上是关于在oracle创建表的时候,如何定义字符型的列,在插入数据之后,自动将其转换成大写或小写?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Oracle 表的 varchar 列中的第二个和第四个字符之后插入“/”

Oracle外键需要建索引吗?

oracle如何查询嵌套表的分项

如何让Oracle表的索引暂时失效?然后恢复有效

在Oracle中重新排序表的列

如何在 Oracle 中更改视图的列大小