Mysql
 sql >> Base de données >  >> RDS >> Mysql

Remplir une base de données sans la commande load data

Essaient-ils de vous faire apprendre un langage de script ?
Si oui, que diriez-vous de Python...

Je viens de tester que le code suivant fait ce dont vous avez besoin.
Veuillez noter :vous devrez télécharger le module tiers MySQLdb.

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()