当前位置: 首页 > article >正文

Oracle 常用数据类型:数值类型、字符类型、日期时间、大对象、特殊类型(ROWID、XML、JSON)附:和 MySql对比,Oracle 特有的关键字或方法

Oracle提供了丰富的数据类型主要包括数值类型NUMBER为主支持任意精度数值FLOAT用于科学计算字符类型VARCHAR2最常用CHAR用于定长CLOB处理大文本日期时间DATE(最常用)、TIMESTAMP(高精度)、带时区类型大对象BLOB(二进制)、CLOB(文本)、BFILE(外部文件)特殊类型ROWID、XML、JSON等使用建议常规文本用VARCHAR2数值用NUMBER日期用DATE大文本用CLOB二进制数据用BLOBOracle的NUMBER类型是其特色统一处理整数和小数与其他数据库的DECIMAL/NUMERIC类似但实现方式不同。Oracle 中的常用数据类型以下是Oracle 常用数据类型的完整总结表格按使用频率和场景分类一、数值类型数据类型语法示例取值范围 / 说明使用场景NUMBERNUMBER最大38位精度可存任意整数/小数默认数值类型通用NUMBER(p)NUMBER(5)整数范围 -99999~99999年龄、数量、编号NUMBER(p,s)NUMBER(7,2)整数位 7-25 位小数位 2 位金额、单价、汇率FLOATFLOAT浮点数精度有限二进制存储科学计算不推荐金融开发建议除非特殊需求否则直接用NUMBER即可。二、字符类型最常用数据类型语法最大长度特点使用场景VARCHAR2(n)VARCHAR2(100)4000 字节变长存储节省空间默认字符串类型90%场景用它CHAR(n)CHAR(10)2000 字节定长存储会补空格固定长度代码如 男/女CLOBCLOB4GB大文本对象文章、日志、JSON 字符串LONGLONG2GB旧类型功能受限不推荐用 CLOB 代替⚠️注意VARCHAR2是 Oracle 特有标准 SQL 中叫VARCHAR但功能类似。三、日期时间类型数据类型存储精度格式示例常用函数使用场景DATE精确到秒2026-04-25 14:30:00SYSDATE、TO_DATE默认日期类型90%场景TIMESTAMP精确到小数秒最多9位2026-04-25 14:30:00.123456SYSTIMESTAMP需要毫秒级精度TIMESTAMP WITH TIME ZONE带时区2026-04-25 14:30:00 08:00FROM_TZ跨时区系统INTERVAL YEAR TO MONTH年月间隔INTERVAL 2-3 YEAR TO MONTHNUMTOYMINTERVAL年龄计算、账期INTERVAL DAY TO SECOND天时分秒间隔INTERVAL 5 02:30:00 DAY TO SECONDNUMTODSINTERVAL任务耗时、超时计算四、大对象及二进制类型数据类型最大长度特点使用场景BLOB4GB二进制大对象图片、PDF、视频、文件CLOB4GB字符大对象长文本、XML、JSONBFILE无限制文件指针存储在 OS 文件系统超大文件引用不常用RAW(n)2000 字节定长二进制加密数据、哈希值LONG RAW2GB旧类型不推荐用 BLOB 代替五、其他特殊类型数据类型说明使用场景ROWID伪列物理行地址18位字符串快速定位行、去重UROWID逻辑行地址支持不同表索引组织表XMLTYPEXML 数据类型存储和查询 XML 文档JSONJSON 数据类型12c存储和查询 JSON 文档BOOLEAN布尔类型23c 才支持早期版本不支持用 CHAR(1) 替代六、快速选型指南新手必看业务需求推荐类型示例姓名、地址、描述VARCHAR2(长度)VARCHAR2(50)固定代码性别、状态CHAR(长度)CHAR(1)年龄、数量、排名NUMBER(5)NUMBER(3)金额、单价NUMBER(10,2)NUMBER(8,2)创建时间、生日DATEDATE文章内容、日志CLOBCLOB图片、附件BLOBBLOB七、注意事项VARCHAR2最大 4000 字节12c 后可扩展到 32767 字节需开启扩展CHAR会浪费空间定长补充空格查询时需TRIM()LONG已废弃新表不要用用CLOB代替NUMBER不带参数最灵活但会占用更多存储空间DATE包含时间不要误以为只有日期NUMBER 数据类型也是Oracle独有的吗不是完全独有的但Oracle 的NUMBER类型确实非常有特色与其他数据库有明显差异。以下是详细对比一、Oracle 的 NUMBER 类型特点sql-- Oracle 语法 NUMBER -- 任意精度小数最大38位 NUMBER(4) -- 整数范围 -9999~9999 NUMBER(7,3) -- 小数整数4位小数3位核心特性可存储任意精度的数值整数/小数/科学计数法最大精度38位是 Oracle 的默认数值类型二、与其他数据库对比数据库对应类型主要差异OracleNUMBER(p,s)统一类型支持整数/小数最大38位精度MySQLINT/DECIMAL(p,s)/NUMERIC需区分整数(INT/BIGINT)和小数(DECIMAL)DECIMAL最大65位精度PostgreSQLNUMERIC(p,s)/DECIMAL类似Oracle但用NUMERIC表示精确小数SQL ServerDECIMAL(p,s)/NUMERIC区分INT系列和DECIMAL不支持统一的NUMBERSQLiteINTEGER/REAL/NUMERIC动态类型建议用INTEGER或REAL三、具体差异示例1. MySQL 需要区分类型sql-- Oracle统一使用 NUMBER CREATE TABLE t ( id NUMBER(4), -- 整数 price NUMBER(7,3) -- 小数 ); -- MySQL需明确指定 CREATE TABLE t ( id INT, -- 整数用INT price DECIMAL(7,3) -- 小数用DECIMAL );2. 精度差异sql-- Oracle最大38位 NUMBER(38,10) -- 整数28位小数10位 -- MySQL最大65位 DECIMAL(65,10) -- 整数55位小数10位3. 无精度声明时的差异sql-- OracleNUMBER 不指定精度 最大38位小数灵活 price NUMBER -- 可存任意小数位数 -- MySQLDECIMAL 不指定精度 DECIMAL(10,0) price DECIMAL -- 实际是整数10位四、总结维度结论是否Oracle独有❌ 不是独有其他数据库有对应类型特色在哪✅ 统一用NUMBER表示数值不需要区分整数/小数最接近的对应MySQL/PostgreSQL 的DECIMAL/NUMERIC开发建议跨数据库时使用DECIMAL或NUMERIC更通用一句话记忆NUMBER是 Oracle 的风格特色统一类型但不是语法专利其他数据库用DECIMAL/NUMERIC实现相同功能。和MySql对比Oracle特有的关键字或方法以下为您整理的Oracle 特有或与 MySQL 差异较大的关键字与方法对比表便于快速区分。分类Oracle 特有说明 / 用法MySQL 对应 / 备注伪列ROWNUM限制返回行数如WHERE ROWNUM 5在排序前生效LIMIT排序后生效ROWID物理行地址可最快定位一行但可能变化无直接对应字符串||字符串连接符如A||B→ABCONCAT()或需设置模式NVL(expr, 替换值)空值替换通用IFNULL()或COALESCE()NVL2(expr, 非空值, 空值)非空/空值分别返回不同结果IF(expr IS NULL, 空值, 非空值)日期SYSDATE当前日期时间精确到秒NOW()或CURRENT_TIMESTAMPTO_DATE(字符串, 格式)字符串转日期如TO_DATE(20260104,YYYYMMDD)STR_TO_DATE()MONTHS_BETWEEN计算两个日期间隔月份数TIMESTAMPDIFF(MONTH, ...)ADD_MONTHS日期加减月份DATE_ADD(..., INTERVAL n MONTH)事务COMMIT/ROLLBACK需手动提交/回滚默认不自动提交InnoDB 也支持但默认自动提交每句 SQL表操作TRUNCATE清空表不能回滚重置高水位线同样有但部分引擎行为不同MODIFY 列名 类型修改列数据类型MODIFY COLUMN或CHANGE COLUMNRENAME COLUMN 旧 TO 新重命名列CHANGE COLUMN 旧 新 类型分页嵌套子查询 ROWNUM需先排序再套子查询直接用LIMIT m, n或LIMIT n OFFSET m多表删除子查询方式不支持DELETE t1,t2 FROM ...语法可直接DELETE t1,t2 FROM ... JOIN ...递归查询CONNECT BY树形结构查询如组织架构WITH RECURSIVE ...排名函数RANK()/DENSE_RANK()/ROW_NUMBER()窗口函数8i 起逐步支持MySQL 8.0 同样支持注意随着 Oracle 和 MySQL 版本迭代部分差异在缩小如 MySQL 8.0 已支持RANK()、递归查询等。上表以开发中最常见、仍需注意的差异为主。

相关文章:

Oracle 常用数据类型:数值类型、字符类型、日期时间、大对象、特殊类型(ROWID、XML、JSON)附:和 MySql对比,Oracle 特有的关键字或方法

Oracle提供了丰富的数据类型,主要包括:数值类型:NUMBER为主,支持任意精度数值,FLOAT用于科学计算字符类型:VARCHAR2最常用,CHAR用于定长,CLOB处理大文本日期时间:DATE(最…...

自举电容如何提升MOSFET驱动电压

自举电容(Bootstrap Capacitor)是功率电子电路中一种特殊的储能元件,其核心功能是为高侧(High-Side)开关器件(通常是N沟道MOSFET)的栅极驱动器提供一个高于其源极电压的驱动电压,从而…...

如何高效地阅读技术文档?

如何高效地阅读技术文档? 技术文档是开发者日常工作中不可或缺的资源,但面对冗长复杂的文档,许多人常常感到无从下手。高效阅读技术文档不仅能节省时间,还能快速解决问题。那么,如何提升阅读效率呢?以下从…...

ClawTeam:AI代理协作框架,从单兵作战到群体智能的革命

1. 项目概述:从单兵作战到群体智能的AI代理协作革命如果你和我一样,长期在AI辅助编程和自动化领域摸爬滚打,那你一定经历过这样的场景:面对一个复杂的全栈项目,你让Claude Code或者Codex去实现,它吭哧吭哧写…...

开关电源工作原理

开关电源是一种通过控制功率开关器件(如MOSFET、IGBT)的导通与关断时间比率(占空比)来调节输出电压和功率的高效率电能变换装置。其核心是利用高频开关动作,配合储能元件(电感、电容)&#xff0…...

轻量级API网关Lunaroute:嵌入式设计与微服务流量治理实践

1. 项目概述:一个轻量级、高性能的API网关最近在梳理团队内部微服务架构的治理方案时,我又重新审视了API网关这个核心组件。市面上成熟的网关产品很多,像Kong、Tyk、APISIX等,功能强大,生态完善,但对于一些…...

麦橘超然Flux控制台实战:如何生成赛博朋克风格的高清图片

麦橘超然Flux控制台实战:如何生成赛博朋克风格的高清图片 1. 项目介绍与核心优势 麦橘超然Flux控制台是基于DiffSynth-Studio构建的离线图像生成Web服务,集成了majicflus_v1模型,通过float8量化技术显著降低了显存占用。这个解决方案特别适…...

浏览器工作原理从输入URL到页面渲染

当你在浏览器地址栏输入一个网址并按下回车时,短短几秒内,一个完整的网页就呈现在你眼前。这背后隐藏着一系列复杂而精妙的过程,涉及网络通信、数据解析和视觉渲染等多个环节。本文将带你深入探索浏览器从输入URL到页面渲染的工作原理&#x…...

为什么你的低代码应用在VSCode里“看不见”变量?深度解析Webview沙箱隔离、eval上下文丢失与Source Map v3兼容性危机

更多请点击: https://intelliparadigm.com 第一章:为什么你的低代码应用在VSCode里“看不见”变量? 当你在 VSCode 中打开一个由主流低代码平台(如 OutSystems、Mendix 或国内轻流、明道云)导出的前端项目时&#xff…...

LaserGRBL终极指南:如何快速上手开源激光雕刻控制软件

LaserGRBL终极指南:如何快速上手开源激光雕刻控制软件 【免费下载链接】LaserGRBL Laser optimized GUI for GRBL 项目地址: https://gitcode.com/gh_mirrors/la/LaserGRBL LaserGRBL是一款专为GRBL控制器优化的免费开源激光雕刻软件,为Windows用…...

微软RD-Agent:自动化AI研发框架,实现数据驱动的智能体协同进化

1. 项目概述:当AI开始驱动AI研发 如果你是一名数据科学家、量化研究员或者机器学习工程师,过去一年里,你肯定没少和各类AI助手打交道。从帮你写几行数据清洗代码,到解释一个复杂的模型原理,这些基于大语言模型的工具确…...

AstrBot主动聊天插件:赋予AI主动关怀能力的完整解决方案

1. 项目概述如果你用过AstrBot,或者玩过其他聊天机器人框架,大概率会有一个共同的感受:Bot总是被动的。它像一个永远在等待指令的助手,只有你主动它、问它,它才会回应。这种交互模式在初期很新鲜,但时间一长…...

Llama-3.2V-11B-cot 企业级应用:基于SpringBoot构建智能客服工单系统

Llama-3.2V-11B-cot 企业级应用:基于SpringBoot构建智能客服工单系统 每次看到客服同事在工单系统里,手动一张张点开用户上传的截图,费力地识别里面的错误代码或者产品瑕疵,然后复制粘贴、分类、写回复,我就觉得这事儿…...

Chord视频分析多场景落地:自动驾驶仿真视频中交通参与者行为预测标注

Chord视频分析多场景落地:自动驾驶仿真视频中交通参与者行为预测标注 1. 项目概述 Chord视频时空理解工具是基于Qwen2.5-VL架构开发的本地智能视频分析解决方案,专门针对视频时空定位与视觉深度理解场景设计。该工具在自动驾驶仿真视频分析领域具有重要…...

多智能体协作网络协议(ANP)设计:从消息格式到生产部署

1. 项目概述:从单体智能到协同网络的范式跃迁最近在开源社区里,一个名为“AgentNetworkProtocol”的项目引起了我的注意。这个名字听起来有点宏大,但当你深入进去,会发现它触及了当前AI应用开发中一个非常核心且日益凸显的痛点&am…...

深度学习模型集成:堆叠泛化实战指南

1. 深度学习模型集成方法概述在机器学习实践中,单个模型的表现往往存在局限性。模型集成技术通过组合多个模型的预测结果,通常能够获得比单一模型更优的性能。其中,堆叠泛化(Stacking Generalization)是一种强大的集成…...

终极指南:如何用CXPatcher一键提升Mac上CrossOver游戏性能

终极指南:如何用CXPatcher一键提升Mac上CrossOver游戏性能 【免费下载链接】CXPatcher A patcher to upgrade Crossover dependencies and improve compatibility 项目地址: https://gitcode.com/gh_mirrors/cx/CXPatcher 还在为Mac上运行Windows游戏卡顿、闪…...

终极免费方案:如何在浏览器中快速查看Parquet文件?

终极免费方案:如何在浏览器中快速查看Parquet文件? 【免费下载链接】parquet-viewer View parquet files online 项目地址: https://gitcode.com/gh_mirrors/pa/parquet-viewer 还在为查看Parquet文件而烦恼吗?传统工具需要复杂安装、…...

茉莉花插件:3步解决Zotero中文文献管理的世纪难题

茉莉花插件:3步解决Zotero中文文献管理的世纪难题 【免费下载链接】jasminum A Zotero add-on to retrive CNKI meta data. 一个简单的Zotero 插件,用于识别中文元数据 项目地址: https://gitcode.com/gh_mirrors/ja/jasminum 如果你是一名中文科…...

上下文工程:让Agent真正用好记忆与知识

拥有记忆和检索能力,只是 Agent 智能化的第一步。如何在有限的上下文窗口内,高效地组织、筛选和利用这些信息,才是决定 Agent 实际表现的关键——这正是上下文工程(Context Engineering)所要解决的问题。 什么是上下文…...

建议收藏 | 构建长期运行 AI Agent 的 5 种核心设计模式!

在 AI 开发圈,有一个心照不宣的误区:只要 Prompt 写得够好,模型能力够强,Agent 就能在生产环境里大杀四方。 但在现实中,当你想让 Agent 帮公司处理几千份跨部门理赔,或者运行一个长达一周的自动化销售序列…...

CUDA 13内存模型重大变更(Unified Virtual Memory默认启用):GPU显存泄漏排查效率下降65%?一文掌握3种LLM训练场景下的精准定位法

更多请点击: https://intelliparadigm.com 第一章:CUDA 13内存模型演进与Unified Virtual Memory本质解析 CUDA 13 对统一虚拟内存(Unified Virtual Memory, UVM)进行了关键性增强,核心在于将 GPU 内存管理从显式分页…...

C++26反射元编程性能白皮书:基准测试显示编译时间降低41%,运行时开销趋近于零(含LLVM IR对比分析)

更多请点击: https://intelliparadigm.com 第一章:C26反射元编程的演进与核心价值 C26 正式将静态反射(static reflection)纳入核心语言特性,标志着元编程范式从模板元编程(TMP)和 constexpr 编…...

AI算子上线即崩?揭秘CUDA 13生产集群中93%隐性PTX兼容性故障的3层诊断法(含cuobjdump逆向校验脚本)

更多请点击: https://intelliparadigm.com 第一章:AI算子上线即崩?揭秘CUDA 13生产集群中93%隐性PTX兼容性故障的3层诊断法(含cuobjdump逆向校验脚本) 当AI算子在CUDA 13.2集群中突然触发cudaErrorInvalidPtx或静默降…...

嵌入式+PLC+微服务联合调试实战(VSCode工业调试全栈手册)

更多请点击: https://intelliparadigm.com 第一章:VSCode工业调试全景概览 VSCode 已成为现代工业级软件开发与嵌入式系统调试的事实标准前端工具,其通过可扩展的调试适配器协议(DAP)无缝集成 GDB、LLDB、OpenOCD、J…...

皮带轮零件机械加工工艺规程制订及工艺装备设计毕业设计(说明书+CAD图纸+SolidWorks图纸+其它相关资料)

在机械制造领域,皮带轮作为传动系统的核心零件,其加工质量直接影响设备运行的稳定性与效率。针对这一关键零件的机械加工工艺规程制订及工艺装备设计,需系统整合材料特性、加工精度要求、设备性能等多维度因素,形成一套科学、规范…...

Phi-3.5-mini-instruct惊艳案例:复杂嵌套JSON Schema生成与验证反馈闭环

Phi-3.5-mini-instruct惊艳案例:复杂嵌套JSON Schema生成与验证反馈闭环 1. 模型能力概览 Phi-3.5-mini-instruct是微软推出的轻量级开源指令微调大模型,在长上下文代码理解(RepoQA)和多语言MMLU等基准测试中表现优异。这款模型…...

AC-GAN原理与实践:实现类别可控的图像生成

1. 项目概述:理解AC-GAN的核心价值AC-GAN(Auxiliary Classifier GAN)是生成对抗网络家族中一个极具实用价值的变体。我第一次接触这个架构是在解决图像生成任务时,发现普通GAN生成的图像虽然质量不错,但无法精确控制生…...

Kandinsky-5.0-I2V-Lite-5s作品赏析:基于Matlab图像处理后的风格化视频生成

Kandinsky-5.0-I2V-Lite-5s作品赏析:基于Matlab图像处理后的风格化视频生成 1. 跨界融合的技术亮点 当科学计算遇上AI生成,会碰撞出怎样的火花?这次我们要展示的是Matlab图像处理与Kandinsky视频生成模型的创新组合。这种跨界合作让原本专业…...

Z-Image-LM测试台参数详解:CFG Scale/迭代步数/生成质量平衡点实测分析

Z-Image-LM测试台参数详解:CFG Scale/迭代步数/生成质量平衡点实测分析 1. 工具概述 Z-Image-LM测试台是基于阿里云通义Z-Image架构开发的专用权重测试工具,专为LM系列自定义权重设计。这个工具解决了模型调试过程中的几个关键痛点: 权重切…...