Ecrire dans une base de données avec ADO

Publié le par Gaël Marot - GTEK-formation

Ecrire dans une base de données avec ADO

l'exemple suivant permet de créer des enregistrement dans la table contacts en utilisant un fichier CSV

le fichier CSV est de ce type:

Nom;Prenom;Soc;mail;fonction;Tel Jilin;Pierrick;ND;Pjegu@ndo.fr;Directeur de projet;0645342312 Rollon;Christophe;Groupon;crollon@groupon.fr;Directeur commercial;0645783456 Gautier;Bernard;Kuhn;bgautier@kun.fr;chef de projet dynamics;0789456734

 

$ado = New-Object -ComObject ADODB.Connection

$ado.open("Provider = Microsoft.ACE.OLEDB.12.0;Data Source=D:\W2K8\cours\script powershell\base de données\contact.accdb")

$recordset = New-object -ComObject ADODB.Recordset #le curseur et vérrou indique la manière dont les données seront enregistrées dans la table

$curseur = 3

$verrou = 3

$query = "Select * from contacts"

$recordset.open($query,$ado,$curseur,$verrou)

#la méthode addnew() permet d'ajouter des nouveaux enregistrements dans la base

#la méthode update() permet de prendre en compte les nouveaux enregistrement

import-csv 'D:\W2K8\cours\script powershell\base de données\contacts.csv' -Delimiter ";" -Encoding Default | foreach{

write-host "enregistrement de l'utilisateur $($_.nom)"

$recordset.Addnew()

$recordset.fields.item("Nom") = $_.nom

$recordset.fields.item("Prénom") = $_.prenom

$recordset.fields.item("Société") = $_.soc

$recordset.fields.item("adresse de messagerie") = $_.mail

$recordset.fields.item("fonction") = $_.fonction

$recordset.fields.item("Téléphone professionnel") = $_.tel

$recordset.update() }

#fermeture

$recordset.close()

$ado.close()

Publié dans Powershell-BD

Pour être informé des derniers articles, inscrivez vous :
Commenter cet article