Aidahaouas commited on
Commit
ca34394
·
verified ·
1 Parent(s): 6ce16c4

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +22 -6
app.py CHANGED
@@ -8,9 +8,14 @@ from dotenv import load_dotenv
8
  from sqlalchemy import create_engine, text
9
  import pandas as pd
10
  from typing import Dict
 
11
 
12
- # Vérifier les drivers ODBC installés
13
- os.system("python check_odbc.py")
 
 
 
 
14
 
15
  # 🔹 Charger les variables d'environnement
16
  load_dotenv()
@@ -35,8 +40,10 @@ llm = ChatMistralAI(
35
  verbose=True
36
  )
37
 
38
- # 🔹 Configuration de la base de données SQL Server
39
- db_url = f"mssql+pyodbc://{user}:{password}@{server}/{database}?driver=ODBC+Driver+17+for+SQL+Server"
 
 
40
  try:
41
  engine = create_engine(db_url)
42
  db = SQLDatabase.from_uri(db_url)
@@ -44,8 +51,17 @@ try:
44
  except Exception as e:
45
  print(f"Erreur lors de la connexion à la base de données : {e}")
46
 
47
- engine = create_engine(db_url)
48
- db = SQLDatabase.from_uri(db_url)
 
 
 
 
 
 
 
 
 
49
 
50
  # 🔹 Définition du graphe LangGraph
51
  class QueryState(TypedDict):
 
8
  from sqlalchemy import create_engine, text
9
  import pandas as pd
10
  from typing import Dict
11
+ import mysql.connector
12
 
13
+ import os
14
+ from dotenv import load_dotenv
15
+ from langchain_mistralai.chat_models import ChatMistralAI
16
+ from langchain_community.utilities import SQLDatabase
17
+ from sqlalchemy import create_engine
18
+ import mysql.connector
19
 
20
  # 🔹 Charger les variables d'environnement
21
  load_dotenv()
 
40
  verbose=True
41
  )
42
 
43
+ # 🔹 Configuration de la base de données MySQL
44
+ # Utiliser mysql-connector-python avec SQLAlchemy
45
+ db_url = f"mysql+mysqlconnector://{user}:{password}@{server}/{database}"
46
+
47
  try:
48
  engine = create_engine(db_url)
49
  db = SQLDatabase.from_uri(db_url)
 
51
  except Exception as e:
52
  print(f"Erreur lors de la connexion à la base de données : {e}")
53
 
54
+ # Si tu veux tester une connexion directe sans SQLAlchemy
55
+ try:
56
+ conn = mysql.connector.connect(
57
+ host=server,
58
+ user=user,
59
+ password=password,
60
+ database=database
61
+ )
62
+ print("Connexion réussie à la base de données MySQL !")
63
+ except mysql.connector.Error as err:
64
+ print(f"Erreur de connexion : {err}")
65
 
66
  # 🔹 Définition du graphe LangGraph
67
  class QueryState(TypedDict):