GNU/Linux >> Znalost Linux >  >> Linux

Linux python3 - Nelze otevřít knihovnu 'SQL Server'

Doporučuji také nainstalovat ovladač ODBC a poté zkusit použít pyodbc. Předpokládám, že používáte počítač Ubuntu 15.04+.

Chcete-li nainstalovat ovladač ODBC, postupujte podle následujících pokynů:

sudo su
wget https://gallery.technet.microsoft.com/ODBC-Driver-13-for-Ubuntu-b87369f0/file/154097/2/installodbc.sh
sh installodbc.sh

Jakmile to uděláte, nainstalujte pyodbc pomocí pip a vyzkoušejte následující skript:

import pyodbc
server = 'tcp:myserver.database.windows.net'
database = 'mydb'
username = 'myusername'
password = 'mypassword'
cnxn = pyodbc.connect('DRIVER={ODBC Driver 13 for SQL Server};SERVER='+server+';DATABASE='+database+';UID='+username+';PWD='+ password)
cursor = cnxn.cursor()
cursor.execute("SELECT @@version;")
row = cursor.fetchone()
while row:
    print row
    row = cursor.fetchone()

Dejte mi vědět, jak to jde.

Na zdraví,
Seznamte se


nahradit DRIVER={SQL Server} s DRIVER={/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.0.so.1.1}


Závislosti stahování závisí na vaší platformě (pro ostatní OS Stáhněte si své závislosti)

Tento příklad pro Ubuntu:

# sudo su 
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -

#Download appropriate package for the OS version
#Choose only ONE of the following, corresponding to your OS version

#Ubuntu 14.04
# curl https://packages.microsoft.com/config/ubuntu/14.04/prod.list > /etc/apt/sources.list.d/mssql-release.list

#Ubuntu 16.04
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list

# #Ubuntu 18.04
# curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list > /etc/apt/sources.list.d/mssql-release.list

# #Ubuntu 18.10
# curl https://packages.microsoft.com/config/ubuntu/18.10/prod.list > /etc/apt/sources.list.d/mssql-release.list

# #Ubuntu 19.04
# curl https://packages.microsoft.com/config/ubuntu/19.04/prod.list > /etc/apt/sources.list.d/mssql-release.list

exit
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install msodbcsql17
# optional: for bcp and sqlcmd
sudo ACCEPT_EULA=Y apt-get install mssql-tools
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
# optional: for unixODBC development headers
sudo apt-get install unixodbc-dev

a poté změnit,

DRIVER={/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.0.so.1.1} 

DRIVER={ODBC Driver 17 for SQL Server}

Linux
  1. Jak vypsat kolekce instalačních balíčků gropinstall na Redhat Linuxu

  2. 15 příkladů příkazů Linux lsof (Identifikace otevřených souborů)

  3. SQL Server na Linuxu nebo v Dockeru plus multiplatformní SQL Operations Studio

  1. Jak nainstaluji Microsoft SQL Server pro linux (fedora)?

  2. Získejte seznam otevřených oken v Linuxu

  3. Jak mohu uvést seznam všech zamčených uživatelů v Linuxu?

  1. Jak zobrazit seznam otevřených portů na serveru Linux/Unix

  2. Nelze otevřít složky v Linuxu nerdtree vim

  3. Získejte seznam otevřených portů v Linuxu