oracle 返回查询列名如何以小写英文字母形式返回?(区分大小写) 20251333编辑
Heaven helps those who help themselves
资深码农+深耕理财=财富自由
欢迎关注
资深码农+深耕理财=财富自由
欢迎关注

oracle 返回查询列名如何以小写英文字母形式返回?(区分大小写)
Created by Marydon on 2023-08-09 10:01
1.情景展示
在Oracle语法当中,它是区分字段名称大小写的(mysql不区分大小写)。
我们可以看到:
在Oracle当中,虽然查询列名一个用的是驼峰命名法,一个用的是小写。
但是,Oracle执行完毕,返回的列名全部转换成了大写。
有时候,为了方便别人调用(数据库间直接调用,比如:我方写好视图,供第三方使用),需要定义好返回的列名。
Oracle默认返回的全是大写名称的字段,如何解决?
2.具体分析
在Oracle当中,查询返回的列名或者别名,如果是字母的话,默认返回的是大写字母,尽管你写的是小写字母。
如果需要强制其以指定大小写形式的别名,返回的话,我们需要在别名两侧使用双引号包住就可以啦。
3.解决方案
用双引号包住别名,Oracle就知道它是要区分大小写的,便会采用其作为列名,不再将其转换成大写。
SELECT SYSDATE "currentTime", TRUNC(MONTHS_BETWEEN(SYSDATE, TO_DATE('2000-09-01', 'YYYY-MM-DD')) / 12) AS "age" FROM DUAL
这一点,我们在plsql当中可以通过转大写来验证。
选中上面SQL,转大写。
我们就会发现:
无论是被单引号包裹的,还是被双引号包裹的英文字母,都不会被强制转换成小写。
另外说一点:
在Oracle当中,为表新增或修改字段名称时,尽管你写的英文字母是小写,在保存之后,会统一变成大写。
还有一点:
如果是无论是to_char()还是to_date(),指定日期的格式化形式时,年月日时间秒等使用大小写都不影响。
yyyy-mm-dd hh24:mi:ss
YYYY-MM-DD HH24:MI:SS
4.扩展
视图返回的列名别名示例
我们从上面可以知道:如果要返回指定列名字母的大小,需要我们使用双引号将其包裹。
在调用的时候,也必须使用双引号对列名进行包裹。
否则的话,将会报错。
与君共勉:最实用的自律是攒钱,最养眼的自律是健身,最健康的自律是早睡,最改变气质的自律是看书,最好的自律是经济独立 。
您的一个点赞,一句留言,一次打赏,就是博主创作的动力源泉!
↓↓↓↓↓↓写的不错,对你有帮助?赏博主一口饭吧↓↓↓↓↓↓
本文来自博客园,作者:Marydon,转载请注明原文链接:https://www.cnblogs.com/Marydon20170307/p/17616135.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2018-08-09 navicat oracle library is not loaded
2018-08-09 navicat ora-28547:connection to server failed
2017-08-09 PotPlayer 进度条显示缩略图
2017-08-09 PotPlayer 禁止更新