根据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 里自动建立了表结构,每个字段都不能为空。但是我要如何修改呢?
今天搞了一天都没把本体存入数据库。连接上却插入不了。。真是郁闷死了。
还请高手帮忙。。谢谢!!!
Exception class java.sql.BatchUpdateException. Message: ORA-01400: NULL ("TEMP"."AA"."FACET")
我明白应该是连接过程中oracle 里自动建立了表结构,每个字段都不能为空。但是我要如何修改呢?
今天搞了一天都没把本体存入数据库。连接上却插入不了。。真是郁闷死了。
还请高手帮忙。。谢谢!!!
解决方案 »
- System.ArgumentException: 不支持关键字: “provider”
- 删除表和记录时的错误
- 又是安装oracle出现的问题!!请大家帮帮忙
- 能使oracle9i运行得比较快,一般需要什么pc配置呢?
- 两张大表关联合成一张表时索引问题请教
- 如何在bat文件中调用sqlplus,并执行sql语句?最后一点血本,大虾们帮帮忙!!!急啊!
- sqlplus连不上oracle的问题?
- ORACLE、SQLSERVER、MYSQL与DB2的比较
- 关于两个不同表结构表交互同步数据的问题(可能会跨库)
- 这个语句效率太低,各位大神有更好的建议吗?取得一个日期区间内最大日期的值和最小日期的值,用于相减
- gc current block 2-way 冲到了等待事件 TOP1,高人过来瞄一眼,谢谢
- 求 高手给看看这个是什么问题
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中的相关文档完成。这是我完成的一些工作,但是还有待改善。很想分享一下您的经验。最后到底到达了什么样的效果。