新闻中心> 文章详情

南京Oracle认证培训学习之Oracle跟MySQL的区别和联系

2016年04月08日

  数据库oracle与mysql在语法上的区别不是很多,但是也有一些。下面是南京Oracle认证培训整理的区别和联系,希望大家能有所收获。


  一、主键自增长:


  1) Oracle:


  使用序列实现,比如创建序列,起点是1000,步进是1:


  create sequence myseq increment by1 start with1000


  增加记录:


  insertinto student(stuId,stuName) values(myseq.nextval,'peter')


  2) mysql:


  在建表时指定主键自增长


  createtable student(stuId int auto_increment primarykey,stuName char(20))


  增加记录:


  insertinto student(stuName) values ('peter')


  二、命令行工具:   南京万和Oracle认证培训


  Oracle 的官方命令行工具是SQLPlus


  mysql 的命令行工具是mysql:


  三、关于用户的概念:


  1)Oracle


  在Oracle中有一个用户的概念,用来登录到数据库,比如openlab用户。用户拥有一定的权限,可以创建表、视图等。用户名下的数据表,视图等对象的集合叫Schema。


  数据库安装好后。建立的默认用户是:sys.system.scott。


  创建用户:create user 用户名 identified by 密码(一般是DBA来创建,普通用户没有创建用户的权限)


  在SQLPLus工具中切换用户:conn 用户名/密码@主机字符串    南京万和Oracle认证培训


  查看当前用户:show  user


  显示所有的用户:select  *  from  all_users


  显示用户下的表:select  *  from  tab


  2) mysql


  mysql中对应于oracle中用户的概念是database。登陆后要先建立database,才能建表。默认创建的database是mysql , test。


  创建数据库:create  databases 库名


  切换用户:use  database 库名


  查看当前用户:connect


  显示所有数据库:show  databases


  显示用户下的表:show  tables


  四、假设有外部脚本文件 C:\script.sql,执行外部脚本文件的方式:


  1)Oracle:   南京万和Oracle认证培训


  @  script.sql


  2) mysql:


  source  script.sql


  五、Sql语句中的表达式:


  1)Oracle:


  select12*10from dual


  2) mysql:


  select12*10


  六、取系统时间


  1)Oracle:


  select sysdate from dual


  2) mysql:


  select now()select sysdate()select curdate()selectselectcurrent_dateselect curtime()selectcurrent_time


  七、日期格式转换:


  1)Oracle:


  select to_char(sysdate,'yyyy-mm-dd') from dual;select to_char(sysdate,'hh24-mi-ss') from dual;


  2) mysql:


  select date_format(now(),'%Y-%m-%d')


  select time_format(now(),'%H-%i-%S')


  1、直接在数据库 用sql语句就把 日期时间处理好


  2、Java代码里 把日期处理好(框架)


  3、页面 用java script代码 处理好


  4、标签(C S)


  八、日期函数:6个月以后


  1)Oracle:


  select add_months(sysdate,6) from dual


  2) mysql:


  select date_add(now(),interval 6month)


  九、字符函数:从‘helloworld’中截取hello


  1)Oracle:   南京万和Oracle认证培训


  select substr('helloworld',1,5) from dual;


  2) mysql:


  selectsubstring('helloworld',1,5)


  十、修改表名:


  1)Oracle:


  rename oldname to newname


  也可以用来修改各种对象名称


  2) mysql:


  altertable oldname to newname


  十一、关于组函数


  select deptno,count(*) from emp


  这种语法,在mysql中是正常的,而在oracle中是会报错的,select列表中的deptno列必须跟在group by 短语后:


  select deptno,count(*) from emp groupby deptno


  十二、分页语句


  1)Oracle:   南京万和Oracle认证培训

 

  select*from (select t.*,rownum rn from (select*from emp) t where rownum <11) where rn >5


  查到的是第6~10条记录


  2) mysql:


  select*from emp limit 5,5


  查到的是第6~10条记录


  十三、计算每个员工的年薪:工资 * 12 + 奖金 * 12


  select ename,sal*12+ nvl(comm,0)*12from emp


  nvl :单行函数,如果为空,返回0


  Oracle : nvl


  Mysql : ifnull


  Sqlserver  :  isnull


  以上就是南京万和Oracle认证培训关于Oracle跟MySQL的区别和联系的介绍,也希望日后大家能多多给大家补充Oracle技术相关的知识。

上一篇下一篇
按时发顺丰

技术交流群

Java大数据交流群560819979    加入
Python技术交流群595083299    加入
Oracle技术交流群595119011    加入
Web前端技术交流群604697610    加入
Huawei技术交流群482919361    加入
Redhat技术交流群587875348    加入
UI设计技术交流群511649801    加入
Cisco技术交流群596886705    加入
IT运维技术交流群605888381    加入