2017-11-20 3 views
0

Ich fand einen solchen Code online, aber ich versuche, es zu bearbeiten, um Python-Daten zu postgresql zu verknüpfen. Ich bin wirklich neu in der Programmierung, also würde ich Ihre Hilfe wirklich schätzen.Wie importiere ich Python-Daten zu postgresql

import psycopg2 
import sys 

connection = None 

connection = psycopg2.connect("host='localhost' db='football'   
user ='postgres' password='password'") 
cur = con.cursor() 
con.commit() 

try: 
    with connection.cursor() as cursor: 
    # Create a new record 
    sql = "INSERT INTO `Games` (`email`, `password`) VALUES (%s, %s)" 
    cursor.execute(sql, ('[email protected]', 'very-secret')) 
except SyntaxError as e: 
    print("There was an error: {}".format(e)) 


connection.commit() 

with connection.cursor() as cursor: 
# Read a single record 
    sql = "SELECT row[5]" 
    cursor.execute(sql, ('row [5]',)) 
    result = cursor.fetchone() 
    print(result) 
finally: 
    connection.close() 
+0

Dieser Code sollte tatsächlich Daten aus Python in PostgreSQL einfügen. Was genau kannst du nicht machen? – bernie

+0

Danke für deinen Kommentar bernie. Ich habe meine CSV-Daten in Python mit Pydev auf Eclipse bekommen, wo ich es geschafft habe, es zu säubern. Jetzt möchte ich diese Daten in verschiedenen Tabellen auf postgresql senden. Was soll ich machen? –

+0

Können Sie in Ihrer Frage ein kleines Beispiel Ihrer Daten und Ihrer Tabellenstruktur bearbeiten? – bernie

Antwort

0

Ihre try Anweisung muss mit einem except gepaart werden. Der Zweck von try/except ist es, alle Fehler in Ihrem try Block würde fälschlicherweise zu fangen. Aber ohne eine except, try ist nicht sehr nützlich.

try: 
    with connection.cursor() as cursor: 
    # Create a new record 
     sql = "INSERT INTO `Games` (`email`, `password`) VALUES (%s, %s)" 
     cursor.execute(sql, ('[email protected]', 'very-secret')) 
except SyntaxError as e: 
    print("There was an error: {}".format(str(e))) 

Ihr tatsächlicher Code psycopg2 sieht ungefähr richtig aus.

+0

gearbeitet. ein weiteres Problem: import psycopg2 ModuleNotFoundError: Kein Modul mit dem Namen 'psycopg2' Trotz der Tatsache, dass ich es heruntergeladen habe. Was ist zu tun? –

+0

OKAY alles funktioniert, aber wenn ich den Code ausführe bekomme ich "Error% s% e" also technisch ist es scheitern .. –

+0

Siehe Updates, versuche '' 'mit' str() 'zu verpacken. Aber Sie müssen nicht unbedingt "e" ausdrucken, Sie können einfach "pass" oder eine andere benutzerdefinierte Druckanweisung verwenden. Das Hauptproblem, mit dem Sie konfrontiert waren, war die unvollständige "try" -Syntax. –

Verwandte Themen