mysql和oracle的几点区别

我以前做一直做oracle下面的应用开发,但是只管连上数据库,然后就在上面用sql实现应用,今天想突然学习下oracle,发现oralce的架构和mysql(以前入门java经常玩的)差别真的很大,mysql下面你建立一个数据库,然后这个数据库就是一个包含表,存储过程等的逻辑集合,oracle上面创建一个数据库实际就是创建一个数据库的实例,这个数据库实例和若干用户绑定,没个用户能看到的就是对应的schema。因为感觉是刚入门粗粗的总结一下:

1.自动增长的数据类型处理
MYSQL有自动增长的数据类型,插入记录时不用操作此字段,会自动获得数据值;ORACLE没有自动增长的数据类型,需建立一个自动增长的序列号,插入记录时要把序列号的下一个值赋予此字段
create sequence seq increment by 1 start with 1 maxvalue 9999
cycle nocache;
其中最大值按字段长度来定,insert语句插入这个字段值为:
seq.nextval
2.在ORACLE 中用select * from all_users显示所有的用户,而在
MYSQL 中显示所有数据库的命令是show databases
3.查询当前所有的表。ORACLE : select * from tab,
MYSQL :show tables。
4改变连接用户(库)。ORACLE :conn 用户名/密码@主机字符串,MYSQL :use 库名。
5.显示当前连接用户(库)。ORACLE :show user,MYSQL :connect。
6.执行外部脚本命令。ORACLE :@a.sql,MYSQL :source a.sql。
7、在Oracle和Mysql都是使用show errors 显示错误信息,但是Mysql中不提示具体的错误信息,只是之处错误大约在什么附近...
8.显示数据库:
Oracle: select dbid,name,log_mode from v$database;(显示当前连接的数据库)
MySql: show databases(显示该系统中的所有数据库)
select database() (展示当前连接的数据库);
9、删除数据库:
Oracle: shutdown immediate;
startup mount restrict exclusive;(保证受限的独占模式)
drop database;
MySql: drop database school;(school指的是数据库名称)
mysqladmin drop database
10、导入.sql文件
Oracle: @ C:/mysql.sql(在相应的方案下)
Mysql: use databasename
source C:/mysql.sql
11、数据查询方面的区别:
a.查询前几行数据:
Oracle:select * from students rownum<=3 order by Sno
DESC;
select * from (select * from students order by Sno DESC)
where rownum<=3
注意在Oracle中这两个句子返回的结果是相同的,都代表先排序再筛选出前3条记录
MySql: select * from students limit 0,2(第一个数字代表从
第几行开始,第二个数字代表查询的记录数
12.更改表名:
Oracle: alter table oldtablename rename to newtablename;
MySql: rename table oldtablename to newtablename;
或者alter table oldtablename rename to newtablename;与(Oracle相同)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值