GNU/Linux >> Tutoriels Linux >  >> Linux

Linux python3 - Impossible d'ouvrir la bibliothèque 'SQL Server'

Je vous recommande également d'installer le pilote ODBC, puis d'essayer d'utiliser pyodbc. Je suppose que vous êtes sur une machine Ubuntu 15.04+.

Pour installer le pilote ODBC, suivez les instructions suivantes :

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

Une fois cela fait, installez pyodbc en utilisant pip et essayez le script suivant :

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()

Dis-moi comment ça se passe.

Acclamations,
Rencontrez


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


Le téléchargement des dépendances dépend de votre plate-forme (pour les autres systèmes d'exploitation, téléchargez vos dépendances)

Cet exemple pour 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

puis changez,

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

DRIVER={ODBC Driver 17 for SQL Server}

Linux
  1. Comment lister les ports ouverts sur le serveur Linux/Unix

  2. Serveur Linux d'administration

  3. Comment puis-je obtenir une liste des réseaux sans fil disponibles sous Linux ?

  4. Obtenir une liste des fenêtres ouvertes sous Linux

  5. Comment puis-je répertorier tous les utilisateurs verrouillés sous Linux ?

4 outils open source pour exécuter un serveur Linux

Comment installer SQL Server sur Linux

Comment répertorier une collection de packages d'installation gropinstall sur Redhat Linux

Installer Velociraptor sur Linux

Comment se connecter à SQL Server à partir de Linux

Sql Server Express est-il disponible pour la production sous Linux ?