我有下一个问题。我需要使用propertyA创建一个顶点,其值为'المساء'。问题来自python,python CAN不能发送字符串'المساء'所以......
我知道我需要做一个编码,就像下一个:
>>>a = 'المساء'
>>>b = a.encode('cp270')
>>>print b
>>>'\x9f\xe9\xea\xab\x9f\x98'
但是使用此编码,OrientDB将无法正常工作。我想我需要一个ascii编码。
存在问题(没有回复): https://github.com/orientechnologies/orientdb/issues/5860
任何了解OrientDB的人都可以帮到我吗?提前谢谢!
答案 0 :(得分:0)
我已尝试使用orientDb 2.2.7版本的代码
import pyorient
db_name='MyDb'
print("connection to the server...")
client=pyorient.OrientDB("localhost",2424)
client.set_session_token(True)
session_id=client.connect("root","root")
client.db_open( db_name, "admin", "admin" )
myFunction = 'insert into v(name) values("المساء")'
client.command(myFunction);
client.db_close()
它对我有用
希望它有所帮助。
答案 1 :(得分:0)
使用python我可以这样做:
>>> a = 'غريبديالى#مخيسةالعز'
>>> type(a)
<type 'str'>
>>> b = a.decode('utf8')
>>> b
u'\u063a\u0631\u064a\u0628\u062f\u064a\u0627\u0644\u0649#\u0645\u062e\u064a\u0633\u0629\u0627\u0644\u0639\u0632'
>>> print b
غريبديالى#مخيسةالعز
所以,如果我像下一个那样放一个查询,就会创建一个带有下一个结果的顶点:
query = 'create vertex v content {"property":"%s"}' %b