Python: получить изображение из MSSQL - PullRequest
2 голосов
/ 27 марта 2009

Я работаю над проектом Python, который получает изображение из MSSQL. Мой код может успешно извлекать изображения, но с фиксированным размером 63 КБ. если изображение больше этого размера, оно просто приносит первые 63 КБ из изображения!

Вот мой код:

#!/usr/bin/python
import _mssql

mssql=_mssql.connect('<ServerIP>','<UserID>','<Password>')
mssql.select_db('<Database>')

x=1
while x==1:
    query="select TOP 1 * from table;"
    if mssql.query(query):
        rows=mssql.fetch_array()
        rowNumbers = rows[0][1]
        #print "Number of rows fetched: " + str(rowNumbers)
        for row in rows:
        for i in range(rowNumbers):
            FILE=open('/home/images/' + str(row[2][i][1]) + '-' + str(row[2][i][2]).strip() + ' (' + str(row[2][i][0]) + ').jpg','wb')
            FILE.write(row[2][i][4])
            FILE.close()
            print 'Successfully downloaded image: ' + str(row[2][i][0]) + '\t' + str(row[2][i][2]).strip() + '\t' + str(row[2][i][1])
    else:
        print mssql.errmsg()
        print mssql.stdmsg()
mssql.close()

Ответы [ 2 ]

1 голос
/ 28 марта 2009

Трудно сказать, в чем проблема, когда вы используете такую ​​базу данных. Ваш запрос явно не выбирает какие-либо столбцы, поэтому мы понятия не имеем, какова структура вашей таблицы или какие типы столбцов. Я подозреваю, что формат таблицы не соответствует ожидаемому, или тип столбца неверен для ваших данных.

Кроме того, ваш код даже не выглядит так, как будто он работает. У вас есть «для строки в строках:», а затем не отступать после этого. Может опубликовать свою схему?

0 голосов
/ 22 марта 2010

Если вы используете freetds (я так думаю): найдите в файле freetds.conf параметр «Размер текста». Стандартным является значение 63 КБ

.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...