Soyez le premier à donner votre avis sur cette source.
Snippet vu 17 907 fois - Téléchargée 30 fois
using System; using System.Data; using System.Data.OleDb; using System.IO; namespace FromDBToTxt { class FromDBToTxt { [STAThread] static void Main(string[] args) { try { Console.WriteLine("Connexion a la bd"); OleDbConnection conn = new OleDbConnection(@"provider=Microsoft.Jet.OLEDB.4.0;Data Source=DB.mdb"); Console.WriteLine("Execution de la commande"); OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM Contacts",conn); DataSet ds = new DataSet("Ensemble des contacts"); da.Fill(ds, "Contacts"); Console.WriteLine("Creation du fichier txt"); FileStream fileStream = new System.IO.FileStream(@"c:\contacts.txt",System.IO.FileMode.Create); StreamWriter sw = new StreamWriter(fileStream); Console.WriteLine("Creation des en-têtes"); foreach (DataColumn col in ds.Tables["Contacts"].Columns) { sw.Write(col.ColumnName); sw.Write("\t"); } sw.Write(sw.NewLine); Console.WriteLine("Ajout des données"); foreach(DataRow row in ds.Tables["Contacts"].Rows) { int cnt = ds.Tables["Contacts"].Columns.Count; for(int i = 0; i < cnt; i++) { sw.Write(row[i]); sw.Write("\t"); } sw.Write(sw.NewLine); } Console.WriteLine("Ecriture terminée"); sw.Close(); conn.Close(); } catch(Exception exc) { Console.WriteLine(exc.Message); } } } }
5 janv. 2004 à 10:51
Je sais aussi quand dans la version du framework .NET fournie avec VS .NET 2003, il y a un provider optimisé pour Oracle. Faudrait te renseigner
30 déc. 2003 à 19:57
En fin de compte, c'est assez basique.
Par contre, concernant la liaison avec Oracle (liaison local) j'ai bcp de mal .Et Access, il faut le reconnaitre n'est pas ce qu'il y a de mieux pr respecter les contraintes d'intégrité .
Tu as déja essayé ?
30 déc. 2003 à 11:20
Dans ce cas-ci, il faut créer un fichier Access DB.mdb et le placer dans le répertoire de l'executable. La requête portera sur la table contacts, quelqu'en soit la structure (SELECT * FROM Contacts).
Vous pouvez bien entendu modifier le code pour prendre en compte votre bd et votre table. Pour ça changez:
OleDbConnection conn = new OleDbConnection(@"provider=Microsoft.Jet.OLEDB.4.0;Data Source=DB.mdb"); DB.mdb par votre base et son chemin d'accès
OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM Contacts",conn); par votre requête
da.Fill(ds, "Contacts"); contacts par le nom que vous voulez donner à votre dataset.
Si c'est pas assez clair, dites-le
28 déc. 2003 à 00:06
Voila mé en tt K c qd meme bien sympa de contribuer en fillant des trucs aussi utiles !
PS: Modérateur, dslé pr la langue de Moliere lol
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.