Имя источника данных не найдено при использовании соединения unixODBC

Я получаю эту ошибку от views.py:

("IM002", "[IM002] [unixODBC][Диспетчер драйверов]Имя источника данных не найдено, и драйвер по умолчанию не указан (0) (SQLDriverConnectW)")

Вот views.py для сохранения данных базы данных в файл json

connstr = 'DRIVER={SQL Server};SERVER=dev_appserver;DATABASE=DemoApp;'
conn = pyodbc.connect(connstr)
cursor = conn.cursor()

cursor.execute("""
            SELECT book_id, book_name, author_name, publisher_name, email, bookref
            FROM Book
            """)

rows = cursor.fetchall()


rowarray_list = []
for row in rows:
    t = (row.book_id, row.book_name, row.author_name, row.publisher_name, 
         row.email, row.bookref)
    rowarray_list.append(t)

j = json.dumps(rowarray_list)
rowarrays_file = 'student_rowarrays.json'
f = open(rowarrays_file,'w')
print >> f, j

objects_list = []
for row in rows:
    d = collections.OrderedDict()
    d['book_id'] = row.book_id
    d['book_name'] = row.book_name
    d['author_name'] = row.author_name
    d['publisher_name'] = row.publisher_name
    d['email'] = row.email
    d['bookref'] = row.bookref
    objects_list.append(d)

j = json.dumps(objects_list)
objects_file = 'student_objects.json'
f = open(objects_file,'w')
print >> f, j

conn.close()

Это закодировано для записи данных базы данных в файл json.

Спасибо


person Community    schedule 03.04.2013    source источник
comment
Как настроить файлы odbc.ini и odbcinst.ini? Кстати, если возможно, не могли бы вы использовать команду strace для отслеживания view.py?   -  person Nan Xiao    schedule 09.04.2013


Ответы (1)


Похоже, вы не передаете имя пользователя или пароль при подключении к базе данных.

Попробуйте что-то вроде этого:

connstr = 'DRIVER={SQL Server};SERVER=dev_appserver;DATABASE=DemoApp;UID=username;PWD=password'
conn = pyodbc.connect(connstr)
person Benny Hill    schedule 14.06.2013