sql >> Database >  >> RDS >> PostgreSQL

verander database (postgresql) in python met behulp van psycopg2 dynamisch

U kunt eenvoudig opnieuw verbinding maken met database=dbname argument. Let op het gebruik van SELECT current_database() om te laten zien met welke database we werken, en SELECT * FROM pg_database om beschikbare databases te tonen:

from psycopg2 import connect
from psycopg2.extensions import ISOLATION_LEVEL_AUTOCOMMIT

def show_query(title, qry):
    print('%s' % (title))
    cur.execute(qry)
    for row in cur.fetchall():
        print(row)
    print('')

dbname = 'db_name'
print('connecting to default database ...')
con = connect(user ='postgres', host = 'localhost', password = '*****', port=5492)
con.set_isolation_level(ISOLATION_LEVEL_AUTOCOMMIT)
cur = con.cursor()
show_query('current database', 'SELECT current_database()')
cur.execute('CREATE DATABASE ' + dbname)
show_query('available databases', 'SELECT * FROM pg_database')
cur.close()
con.close()

print('connecting to %s ...' % (dbname))
con = connect(user ='postgres', database=dbname, host = 'localhost', password = '*****', port=5492)
cur = con.cursor()
show_query('current database', 'SELECT current_database()')
cur.close()
con.close()



  1. Onverwachte database-uitvoer bij gebruik van INNER JOIN

  2. Hoe sub-tekenreeks in orakel te selecteren?

  3. Mysql hoe tabellen samen te voegen

  4. ER_NOT_SUPPORTED_AUTH_MODE:Client ondersteunt geen authenticatieprotocol aangevraagd door de server; overweeg om MySQL-client te upgraden