Mysql Oracle 区别

这篇具有很好参考价值的文章主要介绍了Mysql Oracle 区别。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. oracle select *, id需要在星号前加别名,mysql则不需要

mysql语法:

select *, id from xin_student_t;

oracle语法:

select st.*, st.id from xin_student_t st;

2. oracle表定义了别名,在查询时可以不用别名指定字段,mysql必须用别名

3. mysql不同的表可以有相同的索引名称,而oracle的索引名称需要在整个库中都是唯一的

同样,删除时mysql需要指定表名,oracle则不需要

mysql: drop index index_name on table_name;
oracle: drop index index_name; 

4. mysql大部分函数使用时都会导致索引失效,比如instr,而oracle则不是,像instr就可以使用到索引

5. 联合索引的第一个列未命中索引的情况下,此联合索引在mysql中无法命中了已经,但在oracle中第一个列会使用跳跃式索引,第二列若使用到也会命中索引

6. mysql有反引号`,oracle没有

7. oracle有clob来保存大量字符,最大4GB,mysql没有clob,有类似的

CLOB(Character Large Object)是一种用于存储大量字符数据的数据类型。它可以容纳高达2^32-1个字节的文本数据,适合存储大文本如文章、文档、XML等。

在MySQL的具体实现中,由于历史原因,没有直接对应的CLOB类型,而是通过TEXT类型来支持大文本数据。MySQL提供了四种TEXT类型:

  • TINYTEXT:最大长度为255个字符。
  • TEXT:最大长度为65,535个字符。
  • MEDIUMTEXT:最大长度为16,777,215个字符。
  • LONGTEXT:最大长度为4,294,967,295个字符,通常用来替代CLOB类型。

如果你需要存储大量的字符数据,并且期望与标准SQL中的CLOB相对应,那么可以选择使用LONGTEXT类型字段。例如:

CREATE TABLE my_table (
    id INT PRIMARY KEY,
    large_text LONGTEXT
);

在这个例子中,large_text字段就可以存储类似CLOB的大文本数据。

8. oracle中有number(30, 6)类型,mysql中没有,mysql中有如下数据类型

8.1 mysql数值类型

整数类型:

  • TINYINT:占用1字节存储空间,范围-128至127(有符号)或0至255(无符号)。
  • SMALLINT:占用2字节存储空间,范围-32,768至32,767(有符号)或0至65,535(无符号)。
  • MEDIUMINT:占用3字节存储空间,范围-8,388,608至8,388,607(有符号)或0至16,777,215(无符号)。
  • INT 或 INTEGER:占用4字节存储空间,范围-2,147,483,648至2,147,483,647(有符号)或0至4,294,967,295(无符号)。
  • BIGINT:占用8字节存储空间,范围-9,223,372,036,854,775,808至9,223,372,036,854,775,807(有符号)或0至18,446,744,073,709,551,615(无符号)。

浮点数类型:

  • FLOAT:单精度浮点数,可以指定总位数(如FLOAT(M,D)),但不推荐使用这种方式。
  • DOUBLE 或 DOUBLE PRECISION:双精度浮点数,提供更高的精度。
  • DECIMAL 或 NUMERIC:高精度定点数,常用于需要精确计算的情况,例如财务应用。可以指定总位数和小数位数(如DECIMAL(M,D))。

在实际应用中,根据具体的数值大小和精度要求选择合适的数字类型。同时,也可以通过ZEROFILL属性来控制填充零以达到固定宽度显示的效果。

8.2 oracle数值类型

数值类型主要用于存储整数和浮点数数据。

  1. NUMBER:
  • Oracle的核心数值类型是NUMBER,它可以存储任意精度(从1到38位)的正负整数、定点数或浮点数。

  • 定义格式为 NUMBER(precision, scale),其中:

    • precision(精度):总数字位数,包括小数点两边的数字。如果省略,最大默认值为38。
    • scale(小数位数):小数点右边的数字位数。如果省略,默认值为0。若scale为负数,则表示该数字会被四舍五入到小数点左边相应的位置。

    例如:

    • NUMBER(5,2) 表示最多可以存储5位数字,其中2位是小数部分,如123.45。
    • NUMBER(10) 表示最多可以存储10位数字,无小数部分,如1234567890。
    • NUMBER(5,-2) 表示最多可存储5位数字,并将结果四舍五入到小数点前两位,如12.34会变成12。
  1. BINARY_FLOAT 和 BINARY_DOUBLE:
    从Oracle 10g开始引入了两种二进制浮点类型以提高浮点计算性能:
  • BINARY_FLOAT 是单精度浮点类型,占用4字节内存空间。
  • BINARY_DOUBLE 是双精度浮点类型,占用8字节内存空间。

总的来说,NUMBER类型非常灵活,可以根据实际需求来定义适合的精度和规模,而BINARY_FLOAT和BINARY_DOUBLE则更适合进行高性能的浮点运算场景。文章来源地址https://www.toymoban.com/news/detail-666195.html

到了这里,关于Mysql Oracle 区别的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 从 Oracle 到 MySQL 数据库的迁移之旅

    目录 引言 一、前期准备工作 1.搭建新的MySQL数据库 2 .建立相应的数据表 2.1 数据库兼容性分析 2.1.1 字段类型兼容性分析 2.1.2 函数兼容性分析 2.1.3 是否使用存储过程?存储过程的个数?复杂度? 2.1.4 是否使用触发器?个数?使用的场景? 2.2 建表过程中其他需要注意的事项

    2024年04月11日
    浏览(40)
  • Mysql和Oracle数据库死锁查看以及解决

    一、Mysql数据库死锁排查 SQL : SQL: SQL: 示例: 备注:通过查看事务的trx_started(开始时间)来判断该事务的阻塞时间。 SQL  : 备注:线程ID指的是 1.1.3步骤中查询出来的 trx_mysql_thread_id。 SQL : 示例 : 字段解析 : SQL : 示例: SQL : 备注:多个session用逗号隔开。 View Code   造

    2024年01月20日
    浏览(33)
  • 数据库问题记录(粗略版)oracle、mysql等主流数据库通用

    1. ORA-00918:未明确定义列 该问题情况大致为:select 所取列名错误、重复等问题。 2. “select * from temp where 1=0; ”的含义 布尔值为FALSE,只返回表结构,不返回数据。 举一反三: select * from temp where 10 , 布尔值为TRUE,返回所有数据记录; select * from temp where 1=0, 暂不清楚是何

    2024年02月07日
    浏览(38)
  • 查询Oracle和MySQL数据库中当前所有连接信息

    查询Oracle当前所有连接信息: 查询MySQL当前所有连接信息: 在这两个查询中,我为每个字段添加了中文别名,以提高查询结果的可读性

    2024年02月12日
    浏览(55)
  • 数据库加密AES 适用 Mysql Oracle 以及java

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 备忘录:加密key为:vU4C!~0_HQtlU_p@ 可采用任意长度为16位的字符串 数据库数据需要对敏感数据进行加密,比如手机号,身份证号以及银行卡号等进行加密。需要一套通用的加密方法可以在java项目以及or

    2024年02月15日
    浏览(38)
  • DataGrip连接数据库设置(MySQL、Oracle、SQL Server)

    1.1 配置信息 1.2 测试查询employees库中departments表信息 employees为测试库,具体来源,参考这篇文章 下载并导入MySQL示例数据库employees 。 1.3 测试查询employees库中employees表信息 将SID改为orcl: 3.1 打开DG后新建Data Source-Microsoft SQL Server 下载驱动文件后按图中配置: 3.2 开启Named Pipes和

    2024年02月12日
    浏览(38)
  • 从MySQL迁移到Oracle数据库的详细步骤和方法

    在一些情况下,可能需要将现有的MySQL数据库迁移到Oracle数据库。本文将详细介绍如何进行这一迁移过程,涵盖了备份、转换和导入等关键步骤,以帮助你顺利完成数据库迁移。 在开始迁移之前,务必备份你的MySQL数据库,以便在出现问题时可以还原数据。 确保你已经安装了

    2024年02月08日
    浏览(40)
  • docker安装mysql、clickhouse、oracle等各种数据库汇总

    1:docker 安装mongo数据库并使用 官网:https://www.mongodb.com/docs/manual/ mongo shell教程1:http://c.biancheng.net/mongodb2/connection.html 安装1 :https://www.zhihu.com/question/54602953/answer/3047452434?utm_id=0 安装2:https://www.duidaima.com/Group/Topic/ArchitecturedDesign/9182 使用驱动进行java开发:https://mongodb.github.

    2024年02月10日
    浏览(40)
  • 使用Apache Doris自动同步整个 MySQL/Oracle 数据库进行数据分析

    Flink-Doris-Connector 1.4.0 允许用户一步将包含数千个表的整个数据库(MySQL或Oracle )摄取到Apache Doris(一种实时分析数据库)中。 通过内置的Flink CDC,连接器可以直接将上游源的表模式和数据同步到Apache Doris,这意味着用户不再需要编写DataStream程序或在Doris中预先创建映射表。

    2024年02月09日
    浏览(43)
  • Oracle、MySQL数据库常规命令语法-简易记录(非常规持续更新)

    前言:呈现的是非常基础必备命令以及常规关联语法,因涉及到不同数据库其表达都会有所区别,此篇纯属做个仓库记录更非常规持续更新,专业人士可忽略,且看且珍惜… MySQL: 关系型数据库、重点开源、支持大型规模、标准SQL数据语言、多平台多架构、高可用集群、可定

    2024年01月25日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包