Android小知识6--关于oracle和sql server的sql语句

一、ORA-00911:无效字符 问题和解决

症状描述:

数据库:oracle10g

把sql输出到控制台,然后在Navicat中运行,没有错误。但是在MyEclipse中报错。

解决方法:

我用的是insert  into  tablea(aaa)  values('123');

把最好的;去掉即可。

二、dbo.

sql server中表名前可加dbo.表名,在oracle中不可加。

三、AS

sql server中起别名as可加可不加。

oracle中字段起别名要加as,表起别名不能加as。

四、大小写

sql server中的表字段名称可包含大小写。

oracle中的表字段名称全为大写。这样导致查出的字段名称必须转为小写,否则APP端接受的全是大写。示例:

SELECT q.id AS \"id\" FROM Question q

五、关键字

列举一些在sql server中是关键字,但在oracle中不是关键字的值:

common、[]。

common不能作为oracle的表的字段名或表名。

当查询语句中包含[]时将会出错~比如起别名时SELECT * FROM Question [q],这样子用法报错~

六、内连接和外连接

原文:http://www.cnblogs.com/Ewin/archive/2009/10/05/1578322.html

Android小知识6--关于oracle和sql server的sql语句_第1张图片Android小知识6--关于oracle和sql server的sql语句_第2张图片

内连接和外连接区别:

1)内连接是获取两表的公共部分的记录,即图中的记录集C。语句:select *  from A JOIN B ON A.Aid=B.Bnameid。效果等同于select *  from  A, B where A.Aid=B.Bnameid。

2)外连接分为左连接和右连接。

a、左连接:公共部分记录集C和表A记录集A1

select  *  from A Left JOIN B ON A.Aid=B.Bnameid

b、右连接:公共部分记录集C和表B记录集B1

select *  from A Right JOIN B ON A.Aid=B.Bnameid

Android小知识6--关于oracle和sql server的sql语句_第3张图片




你可能感兴趣的:(Android小知识6--关于oracle和sql server的sql语句)