2017-05-05 3 views
2

Ich versuche, auf die SQL Server-Datenbank Python3.4Python - Pyodbc Verbindungsfehler

mit verbinden Dies ist der Code, der

cnxn = pyodbc.connect('DRIVER={ODBC Driver 13 for SQL Server};SERVER=DESKTOP-GDM2HQ17\SQLEXPRESS;DATABASE=pyconnect;Trusted_Connection=yes') 

funktioniert für mich und ich einloggen in mein Management Studio - Datenbank Windows-Verbindung verwenden.

Hier ist der Code, der für mich nicht funktioniert:

cnxn = pyodbc.connect('DRIVER={ODBC Driver 13 for SQL Server};SERVER=DESKTOP-GDM2HQ17\SQLEXPRESS;DATABASE=pyconnect;UID=DESKTOP-GDM2HQ17\sid;PWD=123') 

Bitte teilen Sie Ihre Gedanken darüber, wo ich falsch werde.

+0

Was ist die Fehlermeldung? –

+0

Login für den Benutzer fehlgeschlagen. – Sid29

+0

können Sie andere Benutzer versuchen, scheint es, dass Sie SID verwenden. –

Antwort

4

Es gibt zwei SQL Server Authentication modes:

1, Herstellen von Verbindungen über Windows-Authentifizierung:

Wenn ein Benutzer über ein Windows-Benutzerkonto verbunden ist, SQL Server überprüft die Kontonamen und das Kennwort des Windows-Haupt Token in dem Betrieb mit System.

2, Herstellen von Verbindungen über SQL Server-Authentifizierung:

Bei der Verwendung von SQL Server-Authentifizierung, Logins in SQL Server erstellt werden, die auf Windows-Benutzerkonten basieren. Sowohl der Benutzername als auch das Kennwort werden mithilfe von SQL Server erstellt und in SQL Server gespeichert.

Ihr erster Code funktioniert so wie er ist Connecting Through Windows Authentication.

Ihr zweiter Code funktioniert nicht, da er versucht, die Anmeldeinformationen (Benutzername und Kennwort) zu finden, die in SQL Server gespeichert sind, die Anmeldeinformationen jedoch nicht im SQL Server erstellt werden.

Darüber hinaus können Sie offizielle Dokument beziehen, um zu wissen, wie zu Change Server Authentication Mode. Hoffe, es wird dir helfen.

+0

Danke, mein Herr! Genau das, was ich wissen wollte. – Sid29

+0

@ Sid29 cool, Prost! –