以文本方式查看主题 - 中文XML论坛 - 专业的XML技术讨论区 (http://bbs.xml.org.cn/index.asp) -- 『 Semantic Web(语义Web)/描述逻辑/本体 』 (http://bbs.xml.org.cn/list.asp?boardid=2) ---- [求助]OWL从Protege转到数据库之后就变成乱码了! (http://bbs.xml.org.cn/dispbbs.asp?boardid=2&rootid=&id=64459) |
-- 作者:cyberrob -- 发布时间:7/8/2008 6:58:00 PM -- [求助]OWL从Protege转到数据库之后就变成乱码了! 搜寻过之前的文章提到用 jdbc:mysql://localhost/testorg?useUnicode=true&characterEncoding=xxx 可以将中文字成功储存至数据库里。(我的OWL档是中文字串组成) 转存之后在proteg里产生的pprj档内容,中文字串却变成了乱码! 请问有大大成功将OWL档转存至数据库过吗? 不论是用protege内建的Convert Project to Format..或是用程式完成的 我试过3.3.1跟3.4 beta都没有成功... java version "1.6.0_04" |
-- 作者:lafille -- 发布时间:7/9/2008 4:56:00 PM -- 请问楼主从protege到mysql是怎么弄的,我也是中文owl文件,Convert Project to Format到数据库,出现以下提示,什么原因?另外,用owl api程式如何做,问题有点多,谢谢! Errors at copying knowledgebase jdbc:mysql://localhost/protege_db?useUnicode=true&characterEncoding=utf8 Exception class java.sql.BatchUpdateException. Message: Data truncation: Data too long for column 'short_value' at row 1 |
-- 作者:cyberrob -- 发布时间:7/9/2008 9:47:00 PM -- 您的這個問題我沒有遇過,但依照我在nabble搜尋的結果可能是因為資料庫版本的問題,你可以參考這個討論串 http://www.nabble.com/Data-too-long-for-column-%27is_template%27-when-exporting-owl-file-to-mysql-to2693015.html#a2769038 問題有可能是使用中文字所以導致在匯入資料庫的時候編碼過長!我看過是有人在Preference->Property Files裡面加上一個值來設定mysql的encoding,像這樣 mysql.encoding = Database.typename.varchar.com.mysql.jdbc.Driver=VARCHAR(255) COLLATE UTF8_BIN 顯然就是把欄位長度設為255,所以也許你可以試試這個方法~ 至於你說如何用程式api去將owl匯入到資料庫,我是在protege wiki找到的,照裡面程式就可以跑了 http://protegewiki.stanford.edu/index.php/ConvertingToDatabaseProject 似乎無法設定編碼,我目前以程式將中文owl匯入也是變成亂碼,用SPARQL去query 該table會出現table的亂碼內容... 接下來,除了資料庫跟protege兩者版本的配合要嘗試之外,我想可能要改用jena的api來跑了...請你也把你的作業環境分享一下吧!也許我們能找出問題。我試過protege 3.3.1 & 3.4beta跟5.0.51a的mysql,最麻煩的就是要找能相互配合的版本呀! 另外請問這邊的板友是否有用中文製作ontology的經驗,似乎很多高手但用著離我理解範圍很遠的方式在講話阿~~呵呵~不好意思~ |
-- 作者:lafille -- 发布时间:7/10/2008 2:14:00 PM -- 我用了protege 3.3.1,mysql5.0.15,jdk1.5.0,今天试了一下,从protege内建 convert format to导入中文全部变成了?好,和你一样pprj用progete打开也成?号了。 用protege owl api接口程序,我把url改成jdbc:mysql://localhost/protege_db?useUnicode=true&characterEncoding=utf8,出现堆错误,好像是无法解析中文,数据库里面倒是没有问号了,感觉是有中文的部分没有被存储进去
[此贴子已经被作者于2008-7-10 15:25:00编辑过]
|
-- 作者:lafille -- 发布时间:7/10/2008 5:49:00 PM -- protege 3.4beta,mysql5.0.15,jdk1.5.0,从protege内建 convert format to导入中文owl文件成功,url改成jdbc:mysql://localhost/protege_db?useUnicode=true&characterEncoding=utf8 但是frame等表格类型类型变成varbinary,再用owl api接口对数据库中的本体无法正确读取,还是保存的时候编码问题吧 |
W 3 C h i n a ( since 2003 ) 旗 下 站 点 苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》 |
4,406.250ms |