J'ai des problèmes avec l'exécution de plusieurs requêtes sur ma base de données psql en utilisant psycopg2. Exemple:psycopg2 ne peut pas exécuter plusieurs requêtes
#!/usr/bin/env python
#-*- coding: utf-8 -*-
import psycopg2
from psycopg2.extras import RealDictCursor
def CreateUser(user, mySchema):
conn = psycopg2.connect("dbname='postgres' user='root' password='somePassword' host='localhost'")
cur = conn.cursor()
cur.execute("""create user %s""" % (user))
conn.commit()
cur.close()
conn.close()
CreateSchema(user, mySchema)
def CreateSchema(user, mySchema):
conn = psycopg2.connect("dbname='postgres' user='root' password='somePassword' host='localhost'")
cur = conn.cursor()
cur.execute("""create schema %s authorization %s """ % (user,mySchema))
conn.commit()
cur.close()
conn.close()
def FetchUserInput():
userInput = raw_input("UserName")
mySchema = raw_input("SchemaName")
CreateUser(userInput, mySchema)
FetchUserInput()
Dans ce cas, la deuxième requête échoue avec une erreur que l'utilisateur créé précédemment n'existe pas! Si j'exécute uniquement la fonction CreateUser, cela fonctionne correctement. Si je l'exécute manuellement dans psql, cela fonctionne correctement. As Si la première validation n'est pas exécutée sur la base de données lorsque j'ouvre une seconde connexion dans la fonction CreateSchema, ce qui n'a aucun sens.
Qu'est-ce que je fais mal?
ah Jésus-Christ. THX. PET de cerveau – py9