面试——MySQl和Oracle在操作上的区别

     在事务上,MySQL的默认级别是Repeatable Read(可重复读),而Oracle的默认级别是Read committed(读已提交)。

     在操作上,MySQl和Oracle也是有一点区别的:

  1. 主键:在Mysql中,主键是可以通过设置自动增长(auto increment)来确保主键的唯一性,如果中途手动添加一个主键的话,           则下一个主键MySQL会将你手动设置的主键加1放进去的。而在Oracle中是没有自动增长的,如果想让主键自动增长的           话,需要手动创建序列(create sequence 序列名),通过调用序列的nextval方法正序(1,2,3,4....)生成下一个             数,以此来当作主键,确保主键的唯一。
  2. 字符串的处理:在Mysql中,对字符串的包裹可以使用单引号或者双引号都可以,而在Oracle中,只能使用单引号包裹字符串
  3. 分页:Mysql的分页是比较容易的,只需要调用limit关键字加上当前位置和之后多少条数据,就可以的到指定范围内的数据               了,但是在Oracle中,却不能这么做,虽然Oracle中有伪列的概念,但它只能使用rownum<50,不能使用                                rownum>50的写法,如果想对Oracle分页随心所欲的进行操作的话,需要使用嵌套查询,先将Oracle的伪列(RowNum)            变为实列,再写指定的位置。
  4. 空字符的处理:在Mysql中,指定列为NOT NULL的话,该列中还可以存放空字符,但是在Oracle中,这样做是不允许的,非                           空字符必须有值,不能是空或者null的。

你可能感兴趣的:(interview)