mysql与oracle在一些基本的sql中存在差异
表结构如下
create table test( id int, name varchar(10), subject varchar(10), score varchar(10), primary key( id ) );
1:获取值的差异。
在MySQL可以使用如下查询
select 1 , '张三' , '语文' , '89'
查询结果如下
而对于oracle不支持该语法。
如果oracle要查询则使用一下语法
select 1 , '张三' , '语文' , '89' from dual
2:插入多条数据的差异
在MySQL中可以使用insert语句将多条记录一起插入
例如
insert into test values( 1 , '张三' , '语文' , '89'),( 2 , '李四' , '数学' , '90'),( 3 , '张三' , '数学' , '78'),( 4 , '李四' , '语文' , '75')
mysql还可以使用该种方式插入
insert into test select 1 , '张三' , '语文' , '89' union select 2 , '李四' , '数学' , '90' union select 3 , '张三' , '数学' , '78' union select 4 , '李四' , '语文' , '75'
对于Oracle来说没有该语法结构,那么该怎么处理只能使用select与union 或者union all组合插入,也可以使用insert一条一条插入
insert into test ( select 1 , '张三' , '语文' , '89' from dual union select 2 , '李四' , '数学' , '90' from dual union select 3 , '张三' , '数学' , '78' from dual union select 4 , '李四' , '语文' , '75' from dual )
3:as后接中文的差异
MySQL 使用as关键字后接中文除了第一个 as 后接的中文可以不用''引起来,其他的都应使用''引起
Oracle则不应使用''引起来
例如
以下前两个在MySQL中是正确的,而对于Oracle中是错误的,最后一个Oracle中是正确,MySQL中错误
select name as 姓名, score as '分数' from test select name as '姓名', score as '分数' from test -- select name as 姓名, score as 分数 from test
4:group by 的差异
对于MySQL来说,查询中字段可以不存在group by中,Oracle,查询的所有字段都应在group by 中
例如
select id ,name from test group by name
在MySQL中是正确的,但在Oracle中会提示 不是Oracle GROUP BY表达式的错误
在Oracle只能这样查询
select id ,name from test group by name, id
即查询的字段都应存在group by 中
5:锁差异
Oracle锁加在数据块上,InnoDB锁加在主键索引上,所以InnoDB总是有主键索引,myisam锁加在表上。
相关推荐
本项目提供了一个Java源码工具,能够帮助用户便捷地将Oracle SQL语句转换为MySQL SQL语句。 Oracle SQL与MySQL SQL的主要差异在于以下几个方面: 1. **数据类型**:Oracle支持的数据类型如NUMBER、LONG、RAW等在...
例如,MySQL的DML(Data Manipulation Language)语句,如`INSERT`、`UPDATE`和`DELETE`,与标准SQL基本一致,但其DDL(Data Definition Language)如`CREATE TABLE`在某些特性上可能与Oracle或SQL Server有所不同。...
"Oracle数据库sql转换mysql数据库工具" 提供了解决这一问题的解决方案,允许用户将Oracle数据库中的SQL语句或数据结构转换为MySQL兼容的格式。 在数据库迁移过程中,这样的工具至关重要,因为它可以简化工作流程,...
标题提到的"‘Mysql的表对象Sql语句转换单表,转换成Oracle创建表sql’"是一个处理这种转换的工具或过程。 首先,让我们理解这个过程的一般步骤: 1. **数据迁移需求分析**:在开始转换之前,了解源MySQL表的结构...
Oracle到MySQL转换工具是一款专为数据库迁移设计的实用软件,主要功能是将Oracle数据库中的数据结构和SQL语句转换成MySQL兼容的格式,方便用户在不同的数据库系统间进行数据迁移。这款工具通常适用于那些需要从...
对ORACLE-SQL进行一些布局优化,更新它的格式
支持Mysql与oracle自动在excel中生成创建sql语句,非常强大,如果想使用sqlserver看我上一资源
在压缩包子文件的文件名"ms转sql语句.exe"中,我们可以推测这可能是一个用于将SQL Server语句转换为Oracle兼容格式的可执行程序。这样的工具通常会提供用户友好的界面,让用户导入SQL Server的数据库元数据,然后...
MySQL到Oracle转换是一个常见的任务,特别是在企业级应用迁移或整合过程中。这个工具专注于将MySQL的数据库结构和数据转换为Oracle数据库兼容的格式。下面将详细解释这个过程涉及的知识点。 1. **SQL语言的差异**:...
执行带一个存储过程参数的的SQL语句。 向数据库里插入图像格式的字段 执行一条计算查询结果语句,返回查询结果 执行查询语句,返回MySqlDataReader 执行查询语句,返回DataSet 执行SQL语句,返回影响的记录数 执行多...
excel自动生成创建表语句,支持MySql,Oracle,SQLServer三种创建方式,自动生成目录文档,方便查看与管理。
使用DBMover可以灵活定义Mysql和Oracle之间表和字段的对照关系,也可以在DBMover创建一个查询,把查询结果当作源表转入到Oracle中。 Dbmover for Mysql to Oracle 可以定时,定周期自动运行。 支持 Oracle 8i 以后...
oracle向mysql建表语句的迁移。 直接表结构的生成sql脚本
本猿最近做数据库迁移,修改了大量sql语句,对oracle和MySQL语法之间的一些不同之处总结了一些。
Oracle、SQL Server 及 MySQL 的查询语句执行顺序相同:开始->FROM 子句->WHERE 子句->GROUP BY 子句->HAVING 子句->ORDER BY 子句->SELECT 子句->LIMIT 子句。每个子句执行后都会产生一个中间结果,供接下来的子句...
在excel中编写表结构后,可以在首页生成对应数据库脚本,包括MySQL、oracle、sqlserver,然后把该脚本在数据库中运行就可以了,还包括首页生成目录结构,有助于数据库表文档的编写
mysql虚拟了一个rowid(类似跟oracle的rowid)--SQL语句
此完档自动生成SQL代码支持mysql/oracle/sqlserver,Excel自动生成mysql及oracle及sqlserver语句。
在数据库管理系统(如MySQL、Oracle、SQL Server等)中,SQL语句是不可或缺的一部分。 1. SQL基础语法 SQL的基础语法包括SELECT、INSERT、UPDATE、DELETE四大语句,它们分别用于查询、插入、更新和删除数据。 - ...
创建表空间,创建表结构,对于表的增删改查等基本操作,只有基础部分,没有进阶,表结构与MySQL基本一致,只有表空间有所不同