根据portege新手入门进阶篇中最后连接数据库一项,我在配置好数据库,并且已经连接上oracle数据库。但是一旦保存的时候,就出现1. Errors at copying knowledgebase jdbc:oracle:thin:@115.145.171.68:1521:ORCL
    Exception class java.sql.BatchUpdateException.  Message: ORA-01400: NULL ("TEMP"."AA"."FACET") 
我明白应该是连接过程中oracle 里自动建立了表结构,每个字段都不能为空。但是我要如何修改呢?
今天搞了一天都没把本体存入数据库。连接上却插入不了。。真是郁闷死了。
还请高手帮忙。。谢谢!!!

解决方案 »

  1.   

    这是ORACLE的地盘呀,你的是啥数据库?楼方的图像很pp
      

  2.   

    我的数据库用的是oracle现在仍未解决崩溃。。我知道是自动生成的表结构时候是有不能插入空字符的限制条件。。但是我用了很多个oracle 链接的driver都不能成功。。难道portege只能连接mysql才能成功插入。。无语 了
      

  3.   

    直接从Protégé将本体存入Oracle流程及待解决问题
    1  存储环境及实施
    1.1  存储环境
    数据库:oracle 11.2。
    Protégé:3.4.4。
    1.2  组件
    Protégé RDF plugin:将包edu.stanford.smi.protegex.storage.rdfdb拷在plugin下。
    Oracle RDF plugin:将ojdbc14.jar,oracle.jar和rd-api.jar,rdf-backen.jar,xerces.jar一起放入plugin\oracle内。
    将ojdbc14改名为driver.jar,拷入Protégé安装目录下。(具体配置,有待高人解答?)
    启动Protégé查看export to format ,出现Oracle RDF database。
    将下载的Oracle Semantic Technologies(提供各种子程序),按照说明覆盖之前的内容。主要是拷入dbhome_1\md下的admin和jlib内。链接。
    1.3  程序流程
    1. 以得到dba授权的一般用户登陆。(不能是sys等系统用户,不然总会报错)。
    2. 启动oracle Semantic Technology Support。在sqlplus下分别执行:
    --启动oracle Semantic Technology Support,显示pl/sql过程已成功完成。
    @%ORACLE_HOME%\md\admin\catsem.sql 
    (关闭为@%ORACLE_HOME%\md\admin\semremov.sql )
    --启动Workspace Manager Support,显示pl/sql过程已成功完成。
    @%ORACLE_HOME%\md\admin\sdordfwm.sql
    (关闭为@%ORACLE_HOME%\md\admin\sdordfwm_rm.sql)
    3. 新建一个表空间,命名为rdf_tablespace。成功后显示Tablespace created。
    SQL> create tablespace rdf_tablespace datafile 'D:\app\404\oradata\orcl/rdf_tablespace.dat' size 1024M;
    4. 新建一个网络,成功显示PL/SQL procedure successfully completed。
    SQL> execute sem_apis.create_rdf_network('rdf_tablespace');
    --引号中的参数为之前建立的表空间rdf_tablespace。针对11g有两种形式:
    (1). execute sdo_rdf.create_rdf_network('rdf_tablespace');10g只能用这种方式。
    (2). execute sem_apis.create_rdf_network('rdf_tablespace');这是11g的最新格式。
    5. 新建一个表格,成功后为Table created。
    SQL> create table RDF_MV(id NUMBER,triple SDO_RDF_TRIPLE_S) tablespace rdf_tablespace;
    --要指定其表空间,为rdf_tablespace。其中的SDO_RDF_TRIPLE_S为一种对象类型,有如下属性:
    SDO_RDF_TRIPLE_S (
      RDF_C_ID  NUMBER,  -- Canonical object value ID
      SEM_M_ID NUMBER,   -- Model ID 
      RDF_S_ID  NUMBER,  -- Subject value ID
      RDF_P_ID NUMBER,  -- Property value ID
      RDF_O_ID  NUMBER) -- Object value ID
    6. 新建一个模型,成功后PL/SQL procedure successfully completed。
    SQL> execute sem_apis.create_rdf_model ('MotorVehicle','RDF_MV','triple');
    --其中的参数第一个为模型名,第二个为关联的表格,第三个为类型。针对11g有两种形式:
    (1). execute sdo_rdf.create_rdf_model;10g只能用这种方式。
    (2). execute sem_apis.create_rdf_model;11g的最新格式。
    7. 完成表空间和表、模型的建立后,在Protégé中export to format。
    2  问题
    工作至此,查询oracle,并未成功。请高人相助!
    以上这些工作是通过阅读oralce semantic technology support中的相关文档完成。这是我完成的一些工作,但是还有待改善。很想分享一下您的经验。最后到底到达了什么样的效果。
      

  4.   

    protege 和oracle 具体怎么配置的啊,我搞了半天总是说 the jdbc driver is not on the classpath,
      

  5.   

    求救:protege3.1.1 和oracle具体怎么连接,jdbc具体如何做。我的qq:435264769.拜托各位了!