sql >> Database >  >> RDS >> Mysql

Een database vullen zonder de opdracht load data

Proberen ze je een scripttaal te laten leren?
Zo ja, wat dacht je van Python...

Ik heb zojuist getest dat de volgende code doet wat je nodig hebt.
Let op:je moet de MySQLdb-module van derden downloaden.

import csv
import MySQLdb

def populate_mysql_db():
    conn = MySQLdb.connect(host="localhost",
        user="myusername",passwd="mypassword",db="mydb")
    c = conn.cursor()
    c.execute('''
        CREATE TABLE IF NOT EXISTS mytable 
        (mycol1 varchar(100), mycol2 integer);
        ''')
    csv_reader = csv.reader(open('mycsvfile.csv', 'rb'), delimiter=',')
    for line in csv_reader:
        c.execute('''INSERT INTO mytable (mycol1, mycol2) 
            VALUES (%s, %s)''', (line[0],line[1]))
    c.close()
    conn.close()

if __name__ == "__main__":
    populate_mysql_db()


  1. Dynamische gegevensmaskering in SQL Server voor beginners

  2. MariaDB CURRENT_ROLE() uitgelegd

  3. Kan geen verbinding maken met MySQL-server op 'localhost' (10061)

  4. Splits IPv4-adres in 4 cijfers in Oracle sql