mysql与oracle语法区别
一.建表(同)
create table tableName(
lid int,
lName VARCHAR(255),
lSex VARCHAR(255),
lAge int
)
二.删除表(异)
MySql:注:对于不存在的表,使用IF EXISTS用于防止错误发生。当使用IF EXISTS时,对于每个不存在的表,会生成一个NOTE。
drop table if EXISTS tableName;
drop table tableName;
Oracle:
drop table tableName;
三.列操作
1.删除列(异)
MySql:注:column关键词可有可无。
alter table tableName add column lBanji varchar(255);
alter table tableName add column lAddress varchar(255),add column lEmail varchar(255);
Oracle: 注:删除多列使用()号,单列不使用。
alter table tableName drop column lBanji;
alter table tableName drop (lAddress,lEmil);
2.添加列(异)
MySql:注:column关键词可有可无。
alter table tableName add column lBanji varchar(255);
alter table tableName add column lAddress varchar(255),add column lEmail varchar(255);
Oracle:注:添加多列使用()号,单列不使用。
alter table tableName add lBanji varchar(255);
alter table tableName add(lAddress varchar(255),lEmil varchar(255));
3.修改列(异)
MySql:
alter table tableName change column lBanji lEmail varchar(255);
Oracle:
alter table tableName rename column lBanji to lEmail;
注:
Oracle中,该列有数据的时候,无法修改列类型;没有数据时可以。
MySQL中,无论修改列是否有数据都可以修改列类型。
但是当有数据是,直接修改列类型都可能对数据造成丢失等,所以一般需要结合具体的业务来对列数据做处理后,再修改列类型类型。所以修改列的类型并非使用SQL语句进行一步到位的修改,而是通过以下流程:
A. 添加临时列
B. 将需要更改的列的值经过类型转换的验证后,赋值给临时列
C. 删除原有列
D. 将临时列的列名修改为原有列列名
四.索引
注:在整个数据库内,MySQL的索引可以同名,MySQL的索引是表级别的;但是Oracle索引不可以同名,也就是说Oracle的索引是数据库级别的。
1.创建索引(同)
create index indexName on tableName (columnName);
2.删除索引(异)
MySql:
alter table tableName drop index indexName
Oracle:
drop index indexName
3.查询表索引(异)
MySql:
show index from tableName
Oracle:
select index_name, table_name, column_name from user_ind_columns where table_name=' tableName '
五.数据库空字符串问题
Oracle中空字符串''就是null(也就是说,只有null,没有空字符),而MySQL是区分null和''的。
对于使用语句:select * from table1 where user_name <> ''来查询列user_name不为空(不为null且不为空字符)时,Oracle会查不出任何结果,而MySQL可以正常运行。这里MySQL之所以可以得到正确结果,还因为比较符号<>会先将列为null的内容进行过滤,然后再比较内容是否为空字符串。
这就要求,在编写代码的时候,尽量保证不会往数据库插入空字符串''这样的值,要么保持有数据,要么保持为null。另外,对于MySQL中已经同时存在Null和''时,所有判断是否为null或者''的地方改为判断列的长度是否为0。
mysql与oracle语法区别相关推荐
- mysql库与oracle库的区别_开源数据库Oracle与MySQL的SQL语法区别
Oracle数据库与MySQL数据库的区别是本文我们主要要介绍的内容,接下来我们就开始介绍这部分内容,希望能够对您有所帮助. Oracle与MySQL的SQL语法区别: 1.在Oracle中用sele ...
- orcle与mysql的区别_Orcle与MySQL的SQL语法区别:
Orcle与MySQL的SQL语法区别: 1.在Oracle中用 select * from all_users显示所有的用户,而在MySQL中显示所有数据 库的命令是 show databases ...
- MySQL与Oracle的区别
MySQL与Oracle的区别 1.收费区别 MySQL是轻量型数据库,开源免费.Oracle是收费的而且价格非常高: 2.实例区别 MySQL一个实例可以操作多个库,而Oracle一个实例只能对应一 ...
- sql和mysql和oracle的区别吗_sql和oracle的语法上有什么区别
sql和oracle语法上的区别有:1.数据类型不同:2.获得当前系统时间的函数不同:3.创建用户的方式不同:4.连接变量和字符串的方式不一样:5.条件语句"if-else-"的语 ...
- mysql与oracle语法对比(实用)
oracle sql语法不同于mysql的sql语法 不同点: 1. mysql: IFNULL(a,b) oracle: NULLIF(a,b) 2. mysql: 可以用Date类型的日期进行比较 ...
- 【进阶之路】Mysql与Oracle的区别
导言 大家好,我是南橘,从接触java到现在也有差不多两年时间了,两年时间,从一名连java有几种数据结构都不懂超级小白,到现在懂了一点点的进阶小白,学到了不少的东西.知识越分享越值钱,我这段时间总结 ...
- 关于mysql和oracle错误的有_关于MySQL与Oracle的区别
0 查询分组时的区别 Oracle数据库中使用Group By分组时 select 后面的列必须是分组的列(group by(列))或者是用了聚合函数的lie 但是 MySQL中 不需要如此 随便分组 ...
- Mysql 和oracle的区别
(1)对事务的提交 MySQL默认是自动提交,而Oracle默认不自动提交,需要用户手动提交,需要在写commit;指令或者点击commit按钮 (2) 分页查询 MySQL是直接在SQL语句中写&q ...
- Mysql和Oracle语句区别
Mysql语句: select substr(a.createtime, 1, 4) as statisticsName from defect1 a; select substr(a.createt ...
- oracle 和mysql语法上的区别,Mysql和Oracle的一些语法区别
作为一个有追求的程序猿,当然要不断的学习,巴拉巴拉巴拉...好了,贴一个网址给大家,哈哈 MySQL与Oracle 差异比较:http://www.cnblogs.com/HondaHsu/p/364 ...
最新文章
- Daily Storm - 31/10/12
- 11.23关于微信JSAPI缺少参数的问题解决
- ODS:输出多样化采样,有效增强白盒和黑盒攻击的性能 | NeurIPS 2020
- Android 如何做一次内存泄漏大排查
- 更新SQL Server实例所有数据库表统计信息
- hiredis源码分析与简单封装
- c++ 哈希表_C语言精华知识:表驱动法编程实践
- oracle使用all关键字过滤,选择要进行过滤的抽样、线程、LWP 和 CPU
- 新中大财务软件-A3中怎样更改IP地址
- 【012】Excel宏编程相关封装模块(删除行/列、隐藏列、合并单元格)_005_#VBA
- python另存为excel_python 将数据保存为excel的xls格式(实例讲解)
- c# Directshow
- springboot 生成二维码
- SVN插件 for VS--VisualSVN
- PowerApps入门——PowerApps的3种打开方式
- java入门之 画板及画板重绘(详细版)
- 登录github更改host文件
- java ec_Java ECKey.setB方法代码示例
- 《紫川》之紫川经典语录
- stm32cubeMX+FreeRTOS(1)——点灯
热门文章
- 股市最好用的大数据软件_最实用的5款炒股软件
- C罗111球成国家队历史射手王,破纪录的动力来自签约曼联
- java用php退出清除session_PHP学习笔记:删除与销毁session
- 一、首页、详情页、文章编辑页制作《iVX低代码/无代码个人博客制作》
- いちゃコミュ+~いちゃいちゃコミュニケーション プラス 汉化补丁
- 安卓库-图表库: MPChartView
- HTML5+CSS3从入门到精通
- autojs之提取text中的红色文字(图片二值化+百度智能云-文字识别OCR-接口调用)
- 从二进制格雷码到任意进制格雷码(1)
- dcs与plc与c语言的联系,PLC与和DCS系统通讯的实现