Bonjour,

Je souhaite créer une table a partir d'un fichier CSV. J'obtiens un message d'erreur lors de l'INSERT que je n'arrive pas à résoudre malgré environ 2h de recherche sur les sites communautaires (Stackoverflow à pourtant réussi à me sortir de pas mal de problème mais là... J'ai pensé qu'il s'agissait peut-être d'un problème d'encodement mais impossible d'utiliser l'argument 'encoding='utf-8''

Le message d'erreur en question: Nom : Erreur.PNG
Affichages : 108
Taille : 9,3 Ko

Voici le code en question

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
import sqlite3
import csv
import os
 
conn = sqlite3.connect('/mnt/Disk2/mysql/Equipements.db')
c = conn.cursor()
if os.path.isfile('/mnt/Disk2/mysql/Equipements.db'):
	c.execute("DROP TABLE Equipements")
c.execute('''CREATE TABLE Equipements (Id text, Nom text, Type text, Ip text)''')
 
with open('EquiVANNES.csv') as csvfile:
	reader = csv.reader(csvfile, delimiter=';', quotechar='|')
	tab = []
	for row in reader:
		tab.append(row)
		c.executemany('INSERT INTO Equipements VALUES (?,?,?,?)', tab)
	print (tab)
 
conn.commit()
 
t=('NVR',)
c.execute('SELECT * FROM Equipements WHERE Type=?', t)
print c.fetchone()