MySQL系列---与Oracle区别

1. 大的方面(宏观)

Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Oracle价格非常高。
Oracle支持大并发,大访问量,是OLTP最好的工具。
安装所用的空间差别也是很大的,Mysql安装完后才152M而Oracle有3G左右,且使用的时候
Oracle占用特别大的内存空间和其他机器性能。


2. 小的方面(语法等)

mysql可以实现自增长主键(通过字段的auto_increment属性);Oracle则需要通过序列(Sequence)来实现。
mysql可以用双引号来引用字符串(当然单引号也行);Oracle只能用单引号。
mysql在查询语句中可以通过limit [offset,] 来直接分页;而Oracle需要使用rownum伪列,且需要注意陷阱,具体参考:Oracle中ROWNUM的使用技巧(转)
mysql对于真假的判断,0为假1为真;Oracle则是用true/false。
mysql的查询可以 select sysdate(); ;而Oracle需要引用虚表(select sysdate from dual;)。
mysql一个数据库在我的理解,相当于Oracle的一个用户(schema)。
mysql中备份命令:mysqldump,执行结果是一个sql文件;oracle备份命令:dpdump,执行结果是一个dmp文件。前件是文本sql命令,可以直接导入到其它mysql数据库,甚至可以稍作修改导入到其它类型的数据库;后者导出文件是二进制的,只能Oracle自己用(甚至还有版本限制)。
mysql中的命令默认是直接commit的;Oracle默认不是。
mysql中注释行以“#“开始;Oracle以“–“开始。
mysql中日期的转换用dateformat()函数;Oracle用to_date()与to_char()两个函数。
mysql中多个字符串的连接用concat();一般Oracle中用“||“连接多个字符串,它也有concat(),但它只能有两个参数。
mysql中查询信息多用:show tables;格式的命令;Oracle中用select * from user_tables;格式的命令查询数据。
mysql在Windows环境下****大小写是不敏感的;unix/linux环境下,对数据库名、表名大小写敏感,列名大小写不敏感。Oracle则不论环境大小写都不敏感。
mysql执行锐脚本命令:mysql>source a.sql; ;Oracle中执行外部命令:SQL>@a.sql。
mysql支持枚举类型(enum)、集合类型(set);Oracle不直接支持,需要使用外键等其它手段实现。
 

现在看来,数据库基本没有本质的区别,只是维度的区别,语法自然各不相同  ----20220518

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lipviolet

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值