الاتصال بقاعدة بيانات Oracle باستخدام CX_ORACLE على Python
سؤال
أنا باستخدام Debian 5 ، Python 2.5 مع تثبيت إصدار CX_ORACLE UNICODE. أحاول الاتصال باستخدام البرنامج النصي أدناه ولكن فشله
>>> connection = cx_Oracle.connect('hr/XXXXX@local_xe')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: argument 1 must be unicode, not str
أعتقد أن CX_ORACLE المثبت هو إصدار Unicode ، يطلب مني تحديد Unicode كمعلمة أولى. لكن ، لا يأخذ سلاسل ولا أعرف ما يمكنني تقديمه؟
المحلول 2
كان الحل لوضع ما يلي
cx_Oracle.connect(u'hr/XXXXX@local_xe')
الاتحاد الافريقي قبل السلسلة. لست متأكدًا من السبب ، لكن هذا حل المشكلة بالنسبة لي.
نصائح أخرى
يجب أن تحاول
cx_Oracle.connect(u'hr/XXXXX@local_xe')
نظرًا لأن لديك إصدار Unicode من CX_ORACLE ، فإنه يتوقع أن تكون سلسلة الاتصال بمثابة unicode (argument 1 must be unicode, not str
)
وضع u''
أمام سلسلة يحولها إلى Unicode ، وبالتالي لا يرمي الخطأ.
لا تنتمي إلى StackOverflow