LINUX.ORG.RU

PyPyODBC и кириллические таблицы

 ,


0

1

Всем привет,

попробовал писать тулзу, которая по информации из базы будет строить карту сети. База в MS SQL, а таблицы её имеют кириллические названия (называл не я).

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import pypyodbc
conn = pypyodbc.connect('DSN=kcbase;uid=TheAdmin;pwd=DaPazz;database=kcbase')
print conn.cursor().execute('select * from Порт').fetchone()[0]
Traceback (most recent call last):
  File "./buildfkinmap.py", line 9, in <module>
    print conn.cursor().execute('select * from Порт').fetchone()[0]
  File "/usr/local/lib/python2.6/dist-packages/pypyodbc.py", line 1552, in execute
    self.execdirect(query_string)
  File "/usr/local/lib/python2.6/dist-packages/pypyodbc.py", line 1573, in execdirect
    check_success(self, ret)
  File "/usr/local/lib/python2.6/dist-packages/pypyodbc.py", line 949, in check_success
    ctrl_err(SQL_HANDLE_STMT, ODBC_obj.stmt_h, ret, ODBC_obj.ansi)
  File "/usr/local/lib/python2.6/dist-packages/pypyodbc.py", line 919, in ctrl_err
    raise ProgrammingError(state,err_text)
pypyodbc.ProgrammingError: (u'42000', u"[42000] [FreeTDS][SQL Server]Incorrect syntax near 'from'.")

Судя по всему, проблема в кириллице. Тот же запрос через тот же DSN с помощью isql работает нормально.

С этим можно что-то поделать?

★★★★★

Как вариант, создать синонимы для тех таблиц или вьюх из которых производится выборка данных

looper
()
Ответ на: комментарий от Deleted

Не изменило результата.

muon ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.