sql >> データベース >  >> RDS >> PostgreSQL

パンダの列をPostgreSQLリストに変換しますか?

    すでにPostgreSQLに接続していて、PostgreSQLにテーブルがあると仮定します。または、このリンクhttps://wiki.postgresql.org/wiki/Psycopg2_Tutorial にアクセスしてください。

    import psycopg2
    
    try:
        conn = psycopg2.connect("host='localhost' dbname='template1' user='dbuser' password='dbpass'")
    except:
        print "I am unable to connect to the database"
    

    まず、.csvファイルを開きます。

    >>> import csv
    >>> with open('names.csv') as csvfile:
    ...     reader = csv.DictReader(csvfile)
    ...     for row in reader:
    ...         print(row['first_name'], row['last_name'])
    ...
    

    これは、https://docs.python.org/2/library/csvの例です。 html PostgreSQLに挿入して印刷行を変更します。

    >>> import psycopg2    
    >>> cur.execute("INSERT INTO test (num, data) VALUES (%s, %s)",
        ...      (100, "abc'def"))
    

    (100、 "abc'def")は(variable1、variable2)で変更できます。このリンクを参照してください http://initd.org/psycopg/docs/usage.html または完全なサンプルコード:

    >>> import csv
    >>> import psycopg2
    >>> with open('names.csv') as csvfile:
    ...     reader = csv.DictReader(csvfile)
    ...     for row in reader:
    ...         cur.execute("INSERT INTO test (num, data) VALUES (%s, %s)", (variable1, variable2))
    ...
    

    これがお役に立てば幸いです...




    1. 主キー値が正しくインクリメントされない

    2. 動的SQL(パラメーターとしてテーブル名を渡す)

    3. SELECT句とWHERE句でのストアド関数呼び出しの最適化

    4. 結果としてmysqlユニオンの列が間違っています