Изменить драйвер в строке подключения ms sql с помощью web2py - PullRequest
0 голосов
/ 12 апреля 2020

Я пытаюсь установить sh соединение с ms sql db и создать таблицу, используя DID pydal, мою строку подключения, а остальные:

db = DAL("mssql://myuser:mypassword@myserver.database.windows.net/mydb")
db.define_table(
    "post",
    Field("title", type="string", length=256),
    Field("content", type="text"),
    Field("image", type="upload"),
    Field("comments", type="list:string")
)

db.post.insert(title="Juan", content="this is context")

, и я получаю это сообщение об ошибке:

<clase 'pyodbc.Error'> ('01000', "[01000] [unixODBC] [Driver Manager] No se puede abrir lib 'SQL Server': archivo no encontrado (0) (SQLDriverConnect)")

Я также получаю следующее:

self.dsn    'SERVIDOR = myserver.database.windows.net; PORT = 143 ... ID = myuser; PWD = mypassword; DRIVER = {SQL Server}'

, что заставляет меня думать, что вызываемый вами драйвер не тот, который указан, вы используете DRIVER = {SQL Server} ', когда это должно быть {ODBC Driver 17 for SQL Server}, но я не знаю, как изменить драйвер в запросе.

Я попытался подключиться, используя pyodb c, и он отлично работает:

import pyodbc 

server = 'tcp:myserver.database.windows.net' 
database = 'mydatabase' 
username = 'myuser' 
password = 'mypassword' 
cnxn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};SERVER='+server+';DATABASE='+database+';UID='+username+';PWD='+ password)
cursor = cnxn.cursor()

Если вы можете помочь мне решить эту проблему, пожалуйста. Заранее спасибо.

...