以前都用mysql  或是mssql  现在想学习下oracle 就到网上下载了一个,11g的简单版本,现在通过Navicat for Oracle已经成功连上了,数据库,
当然我先是通过,创建 Application Express 工作区 那建立了我的数据库,以前,用 navicat for mysql 的时候,选好自己建建立的数据库后,连接成功,就可以直接设计表,然后新建表就可以了,但是oracle 进去后,不太一样,问题一,点击所选数据库,连接成功后,和以前的 mysql 完全不一样了,里面有二个部分,一个部分是,system(模式) ,还有一个部分有很多模式,
我里面有,
ANONYMOUS
APEX_040000
APEX_PUBLIC_USER
CTXSYS,MYORACLES_CMS(这个是我自己建的)
FLOWS_FILES
HR
MDSYS
OUTLN
SYS
XDB
XS$NULL按我的理解应该是在我的建的这个MYORACLES_CMS 这个模式下,建我自己开发用的表,不知道是不是这样,那其他的有什么用的,是否可以删除呢。还是需要设置,什么的,是否有些常规操作对这些模式。还有,我做的是java s2sh项目,学习,想请问下,这些模式,相对于,mysql来说,现面换成oracle后,这些,对于项目有没有需有改变的,地方,还是就当mysql一样开发,就只当它为一个数据库呢。问题二,我打开我自己建的MYORACLES_CMS模式里面还有很多个表  APEX$_ACL
APEX$_WS_FILES
APEX$_WS_HISTORY
APEX$_WS_LINKS
APEX$_WS_NOTES
APEX$_WS_ROWS
APEX$_WS_TAGS
APEX$_WS_WEBPG_SECTIONS
APEX$_WS_WEBPG_SECTION_HISTORY
DEMO_CUSTOMERS
DEMO_ORDERS
DEMO_ORDER_ITEMS
DEMO_PRODUCT_INFO
DEMO_STATES
DEMO_USERS
DEPT
EMP
想问下,这里面这些个表,都有什么用呀,
为什么建好数据库后,有这么多内容在里面这些能不能删除,

是不是不用理会这些,内容,我直接建我自己的表,开发就好了,问题三,在建表的时候,里面还有三个选项,有常规,外部,和索引组织,这些对于,常规开发来说,有没有需要判断留意的地方,问题四,比如以上问题,都是按我想象这样,   打开我建的那个MYORACLES_CMS模式 然后,建里我自己需要开发的表,比如“tabel1,table2,table3”   那如果,我需要通过生成我的.sql文件,我自己试过了,选择MYORACLES_CMS模式然后,生成sql文件,有这个操作,但是我发现,他生成的时候,把里面的所有表,都生成了,那这样看来,是不是,我可以删除里面所有表,只保留 “tabel1,table2,table3”这些我建立的表,就可以了,
那换名话说,是不是除了我自己建的MYORACLES_CMS模式 第二部份里面的 所有别的模式,是不是都可以删除呢。因为第一次用 oracle  所以有太多疑问,问题五,因为,java web开发,对于数据库来说,是可移植的,那么按我的分析,在java s2sh 项目里,服和器ip,然后端口,用户名,密码,当然这些都是常规的,那在填写数据库名的时候,应该写什么呀,是写 Service name/SID  还是应该写 MYORACLES_CMS模式 名字呀,!
希望,高手,能不厌其烦,一一解答,希望这次放假能把这些问题都理解,以后,可以用于项目中。

解决方案 »

  1.   

    如果你用ssh2框架开发web项目的话,如果你的数据库操作都是用hql语言,相对来说要简单一些,做以下操作就行:
    1、更换数据库名和密码
    2、更改数据库连接url
    3、更换数据库驱动
    4、更换数据库方言
    剩下的操作就跟在mysql中一样了。
    如果写了一部分的sql语句,则需要做一些调整。
      

  2.   

    那是不是,只要选择我自己创建的那个 MYORACLES_CMS(这个是我自己建的)  然后把里面的,不要的表都删除就可以了呀,那它时面别的是什么东西呀,有什么用呀ANONYMOUS
    APEX_040000
    APEX_PUBLIC_USER
    CTXSYSMYORACLES_CMS(这个我自己创建的时候的名字是一样的,所以我判断应该是在这个里面创建我的表,对吧!)FLOWS_FILES
    HR
    MDSYS
    OUTLN
    SYS
    XDB
    XS$NULL然后,别的和mysql一样的对吧,因为,我没用过oracle  所以,一进来发现界面不一样了,所以就郁闷了!
      

  3.   

    Oracle 与 MySQL 不一样Oracle 以按模式管理的,或者你也可以简单地理解为按用户管理的吧。Oracle 很少去创建数据库,它的数据库就是一个 Oracle 服务实例。初学的话,Oracle 数据库服务器安装好后有个默认的 orcl 实例,这也是 Oracle 默认的数据库名,你可以在上面创建用户就可以了使用了。嗯,在你这里 system 是一个模式或者叫用户也可以,你最好新创建一个用户来做业务操作,不要使用 system、manager 等数据库管理账号。
      

  4.   

    那在我的用户(模式里在)MYORACLES_CMS  时面默认出现的表,是不是都可以删除呀!
      

  5.   

    我只知道DEPT(department部门)、EMP(employee员工)两个表,是一个叫SCOTT用户(也可以叫SCOTT模式)下的两个表,常用来学习、测试。
      

  6.   

    以下模式:
    ANONYMOUS
    APEX_040000
    APEX_PUBLIC_USER
    CTXSYS,MYORACLES_CMS(这个是我自己建的)
    FLOWS_FILES
    HRMDSYS
    OUTLN
    SYS
    XDB
    XS$NULL
    中的HR模式,此模式下也有一些表,这些表在很多ORACLE教学书籍中常用来做学习测试用