GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux python3 - Lib 'SQL Server' kann nicht geöffnet werden

Ich empfehle Ihnen auch, den ODBC-Treiber zu installieren und dann zu versuchen, pyodbc zu verwenden. Ich gehe davon aus, dass Sie sich auf einem Ubuntu 15.04+-Rechner befinden.

Befolgen Sie die folgenden Anweisungen, um den ODBC-Treiber zu installieren:

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

Sobald Sie das getan haben, installieren Sie pyodbc mit pip und versuchen Sie das folgende 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()

Lassen Sie mich wissen, wie das geht.

Prost,
Treffen


ersetzen Sie DRIVER={SQL Server} mit DRIVER={/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.0.so.1.1}


Das Herunterladen von Abhängigkeiten hängt von Ihrer Plattform ab (für andere Betriebssysteme laden Sie Ihre Abhängigkeiten herunter)

Dieses Beispiel für 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

und dann ändern,

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

DRIVER={ODBC Driver 17 for SQL Server}

Linux
  1. So listen Sie offene Ports auf einem Linux/Unix-Server auf

  2. Administrations-Linux-Server

  3. Ist SQL Server Express für die Produktion unter Linux verfügbar?

  4. Holen Sie sich eine Liste der offenen Ports in Linux

  5. Überprüfen Sie, ob der Port auf einem Linux-Server geöffnet oder geschlossen ist?

4 Open-Source-Tools zum Ausführen eines Linux-Servers

So installieren Sie SQL Server unter Linux

Installieren Sie Velociraptor unter Linux

So stellen Sie von Linux aus eine Verbindung zu SQL Server her

Kann keine Ordner in Linux nerdtree vim öffnen

Kann ich von der Linux-Shell aus eine Verbindung zu einem Windows-Computer herstellen?