Oracle 建表使用到关键字作为列明或者表名如何处理?

在建表时,一般都不允许使用oracle关键字作为表名,或者列明,否则在后面对表执行数据操作时,会出现sql语法错误的提示。

比如关键字 number(一般喜欢用这个单词表示数量),desc (一般喜欢用这个单词作为描述,简介等),但在oracle中,这两个都是关键字。number表示数字类型,desc表示倒序排序。

如果想用这两个单词作为列明如何处理?只要给这两个关键字加上双引号("")就可以了,如下:

create table t_test(
"number" number,
"desc" varchar2(2000)
);

接下来看看下面这个查询语句

select number,desc from t_test;

好像没什么问题,但是却执行不了,提示“缺失表达式”,为什么会这样?

仍然是因为语句中列明为关键字,所以语法解析错误,处理方式跟上面建表一样,加上双引号,如下就可以了

select "number","desc" from t_test;

 

总结,从上面的处理方式可以看出,虽然有办法解决使用关键字作为列明,甚至是表名,但是在实际使用过程中,却会带来不少麻烦,所以,最后的结论是,建表最好不要使用关键字作为列明。

PS: 自己遇上了,MARK一下

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值