9

I've got a Java Program connected to my SQLServer Express Database. The code I used to connect is:

Connection con = null;
try {   
    String url = "jdbc:sqlserver://GANESHA\\SQLEXPRESS:1434;databaseName=4YP;integratedSecurity=true";
    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    con = DriverManager.getConnection(url);
}

I have since decided to use Python instead but can't seem to get it to connect to my database. The code I've been using is:

import pyodbc

con_str = (
    r'Driver = {SQL SERVER};'
    r'Server = .\GANESHA;'
    r'Database = 4YP;'
    r'TrustedConnection = yes;'
)
cnxn = pyodbc.connect(con_str)

The error I'm getting is: "pyodbc.Error: ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)')"

2 Answers 2

11

I got it to work using the following approach:

import pyodbc

con = pyodbc.connect(Trusted_Connection='yes', driver = '{SQL Server}',server = 'GANESHA\SQLEXPRESS' , database = '4YP')
Sign up to request clarification or add additional context in comments.

1 Comment

That's how I did it too
3

Try using this approach:

import pyodbc
cnxn = pyodbc.connect(r'Driver={SQL Server};Server=myServer;Database=myDB;Trusted_Connection=yes;')
cursor = cnxn.cursor()
cursor.execute("SELECT * FROM myTable")
while 1:
    row = cursor.fetchone()
    if not row:
        break
    print(row.myColumnName)
cnxn.close()

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.