Partage
  • Partager sur Facebook
  • Partager sur Twitter

lire un fichier .txt et l ecrire dans la BD

c# et Microsoft SQL Server

    27 décembre 2020 à 2:59:08

    bonjour,

    je suis nouveau en C# et j aimerai ecrire une fonction .Net qui lit un fichier texte (.txt) et enregistre le contenue de ce fichier dans une base de donnee (Microsoft SQL Server). voici le code de la main fonction et j ai deja cree une Base de donnee avec la Table Customers pour y inserer mes donnees et le fichier Probe qui contient mes donnees. 

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    using System.IO;
    using System.Data.SqlClient;
    
    namespace connection_DB
    {
        static class Program
        {
    
            [STAThread]
            static void Main()
            {
                Application.SetHighDpiMode(HighDpiMode.SystemAware);
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new Form1());
    
                using (StreamReader sr = new StreamReader(File.Open("C:\\Probe.txt", FileMode.Open)))
                {
                    using (SqlConnection txtbaglan = new SqlConnection("server=.; database=Probe;trusted_connection=true"))
                    {
                        txtbaglan.Open();
                        string line = "";
                        while (!String.IsNullOrEmpty(line = sr.ReadLine()))
                        {
                            string[] parts = line.Split(new string[] { "," }, StringSplitOptions.None);
                            string cmdTxt = String.Format("INSERT INTO Customers (CustomerID, CompanyName, ContactName, Phone, Customer_Date) VALUES ('{0}','{1}','{2}','{3}','{4}')", parts[0], parts[1], parts[2], parts[3], parts[4]);//", parts[0], parts[1]);
                            using (SqlCommand cmddd = new SqlCommand(cmdTxt, txtbaglan))
                            {
                                cmddd.ExecuteNonQuery();
                            }
                        }
                    }
                }
            }
        }
    }

    Merci et Bonne annee 2021.

    • Partager sur Facebook
    • Partager sur Twitter
      27 décembre 2020 à 22:35:11

      Il existe tout une galaxie d'outils d'ETL qui font le taf.

      Votre implémentation est fragile aussi bien algorithmiquement que sécuritairement (SQL injection).

      Si vous n'utilisez pas un ORM complet, au moins utilisez le couple DataSet/DataAdapter.

      https://docs.microsoft.com/fr-fr/dotnet/api/system.data.common.dataadapter.update?view=net-5.0

      • Partager sur Facebook
      • Partager sur Twitter
      Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.

      lire un fichier .txt et l ecrire dans la BD

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown