I am using a simple python function to connect to a MySQL database.I receive an error saying a variable is referenced before it is assigned, but this would not be the case if the connection had successfully established. Why is the connection failing?
I am using Ubuntu Linux 18.04. I am running xampp 7.3 to host the mySQL and apache servers and am using phpmyadmin to access the database.I am running my code with python 3.
This is my code:
import mysql.connector from mysql.connector import Error def connect(): """ Connect to MySQL database """ try: conn = mysql.connector.connect(host='localhost', database='myDB', user='xxx', password='yyy!') if conn.is_connected(): print('Connected to MySQL database') except Error as e: print(e) finally: conn.close() if __name__ == '__main__': connect()
And this is the error I receive:
Traceback (most recent call last): File "01_python-mysql-connect.py", line 23, in <module> connect() File "01_python-mysql-connect.py", line 19, in connect conn.close() UnboundLocalError: local variable 'conn' referenced before assignment
I am expecting a successful connection to the database. I believe something could be wrong with my configurations but don't know where to start in solving the problem. Thank you.