PHP(windows),virtuoso,SPARQL,UTF-8(俄语)不起作用



目前我正在处理一个关于 virtuoso 和 php 的项目(windows7 (64)),

Virtuoso中三元组的"insert"(sparql查询)不适用于俄语(UTF-8)

 $iquery = "sparql INSERT DATA INTO <http://example.net/Empl> {<http://example.net/empl1> <http://example.net/firstname> 'Русский язык'.}";

以下查询在英语中有效,但是当一行以俄语 (UTF-8) 显示时,PHP 会返回错误

 *Warning*: odbc_exec() [function.odbc-exec <http://localhost:8890/test/admin/function.odbc-exec>]: SQL error:  [OpenLink][Virtuoso ODBC Driver][Virtuoso Server]SQ074: Line 1: Bad  escape sequence in a SPARQL short single-quoted string at '', SQL state  37000 in SQLExecDirect in*C:virtuoso-opensourcevsptestadminindex.php*on line*164*

你能为我提供什么?

谢谢 谢尔盖

PS sparql 查询 "insert" 适用于 isql 中的俄语 (UTF-8)

您是否按照 http://docs.openlinksw.com/virtuoso/dbadm.html#ini_Client 的详细设置SQL_UTF8_EXECS = 1

您需要正确配置 ODBC 连接字符串,以便 Virtuoso 正确接受 UTF-8

是否已在连接字符串中包含 Charset=utf-8 参数?

如果您遇到此问题,

但仍然遇到此问题,那么您应该联系Virtuoso开发人员以获得进一步的帮助

最新更新