Oracle数据库索引列规范中的单引号

本文探讨了在Oracle中创建表和索引时,如何误用单引号导致创建基于函数的无用索引的问题。通过示例解释了如何区分用于标识符的双引号和用于字符串文字的单引号,强调了正确使用引号的重要性,以免产生意外的数据库结构。
摘要由CSDN通过智能技术生成

在我的一篇文章中 ,我提到了使用双引号在Oracle标识符中显式指定大小写的缺点是,可能会与对字符串文字使用单引号相混淆。 尽管我个人并不认为这是避免在Oracle中避免对标识符使用双引号的充分理由,但是值得意识到这种潜在的混淆。 何时使用单引号与何时使用双引号一直是数据库新用户在一段时间内将两者区分开的困惑。 在这篇文章中,我看一个示例,说明在没有引号的情况下意外滥用单引号会导致创建不必要的索引的情况。

简单脚本createPersonTable.sql的SQL createPersonTable.sql生成一个名为PEOPLE的表,并将为此表的主键ID列隐式创建一个索引。 但是,该脚本还包含一个明确的索引创建语句,乍一看似乎可以在此主键列上创建索引。

createPersonTable.sql

CREATE TABLE people
(
   id number PRIMARY KEY,
   last_name varchar2
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值