Метод web.py db.select () нельзя использовать в sql-сервере 2005 \ 2008 \ 2012 \ 2017? - PullRequest
0 голосов
/ 12 октября 2018

Я устанавливаю python = 2.7.15, web.py = 0.39, ОС - это сервер Widnows 2016 и SQL Server 2012, используя следующий код для подключения SQL-сервера:

import web
DATABASE_ARGS = { 
    "dbn": "mssql",
    "host": "127.0.0.1",
    "port": "1433",
    "db": "db",
    "user": "user",
    "password": "password",
    "charset": "utf8",

    # DBUtils
    "mincached": 1,
    "maxcached": 2,
    "maxshared": 3,
    "maxconnections": 5,
    "blocking": True,
    "setsession": ""
}
db = web.database(**DATABASE_ARGS)

Метод

db.insert('table1', vars, where='id=111')、
db.update('table1', where='id=111', value='new vars')、
db.delete('table1', where='id=111') 

хорошо работает.

Когда я использую следующий код:

db.select('table1') 
0.02 (1):SELECT * FROM table1
<web.utils.IterBetter instance at 0x0333DD30>
db.select('table1').list()
0.02 (1):SELECT * FROM table1
[]
list(db.select('table1'))   
0.02 (1):SELECT * FROM table1
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: __len__() should return >= 0

Я пробую SQL Server 2005, SQL Server 2008, SQL Server 2012, SQL Server 2017, Это та же проблема, но тот же код работаетну в mysql 5.5.Можете ли вы помочь мне исправить это.Большое спасибо.

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