Aller au contenu
View in the app

A better way to browse. Learn more.

Next

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Resolu] [C#] Upload / Download fichier SQL server

Featured Replies

Posté(e)

Bonjour,

je cherche un exemple d'upload / download de fichier vers une base de données SQL Server 2000 en C#.

Merci ;)

Modifié par NiTrOuS

Posté(e)
  • Auteur

Comment enregistrer un fichier binaire en C# vers une base de données SQL server ?

J'ai un fichier texte, je veux que mon programme c# le convertisse en binaire et ensuite fasse un INSERT dans ma BDD

Posté(e)
  • Auteur

Voilà j'ai trouvé, il suffit d'utiliser les BLOB:

Backup:

				
FileStream FileStream1 = new FileStream(@PathAndName, FileMode.Open, FileAccess.Read);
BinaryReader BinaryReader1 = new BinaryReader(FileStream1);
byte[] FileToSave = BinaryReader1.ReadBytes((int)FileStream1.Length);
SqlParameter ParameterSavedFile = Command.Parameters.Add("@ProcedureSavedFile",SqlDbType.Binary,FileToSave.Length,"SavedFile");
//Déclaration de la connexion à la DB en allant chercher les paramètres dans le fichier de configuration
SqlConnection Connection = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionParameter"]);
//Déclaration de la fonction à exécuter
SqlCommand Command = new SqlCommand(StoredProcedure,Connection);
//Déclaration du type de fonction à exécuter
Command.CommandType = CommandType.StoredProcedure;
ParameterSavedFile.Value = FileToSave;
//Ouverture de la connexion à la DB
Connection.Open();
//Exécution de la procédure embarquée
SqlDataReader Reader = Command.ExecuteReader();
//Fermeture du reader
Reader.Close();
//Fermeture de la connexion à la DB
Connection.Close();
//Fermeture du file stream
FileStream1.Close();
//Fermeture du binary reader
BinaryReader1.Close();

Restore:

public void RestoreFile(int recordingid)
	{
		try
		{
			// Chaîne de connexion
			string ConnectString = ConfigurationSettings.AppSettings["ConnectionParameter"];
			// Objet connection
			SqlConnection Connection = new SqlConnection(ConnectString);
			// Ouverture de la connexion
			Connection.Open();
			SqlCommand Selection = new SqlCommand("SELECT SavedFile FROM Recording WHERE RecordingId = " + recordingid, Connection);
			FileStream FileStream1;
			BinaryWriter BinaryWriter1;
			int BufferSize = 100;
			byte[] OutByte = new byte[BufferSize];
			long ReturnValue;
			long StartIndex = 0;
			SqlDataReader MyReader = Selection.ExecuteReader(CommandBehavior.SequentialAccess);
			while (MyReader.Read())
			{
				// Création de fichier pour enregistrer ce qui est récupéré
				FileStream1 = new FileStream(@"C:\" + recordingid + ".txt",FileMode.OpenOrCreate, FileAccess.Write);
				BinaryWriter1 = new BinaryWriter(FileStream1);
				// Reset le byte de départ pour le nouveau BLOB
				StartIndex = 0;
				// Lecture des byte et conservation du nombre de byte retourné
				ReturnValue = MyReader.GetBytes(0, StartIndex, OutByte, 0, BufferSize);
				// Continue à lire et à écrire aussi longtemps qu'il y a de byte dans le buffer
				while (ReturnValue == BufferSize)
				{
					BinaryWriter1.Write(OutByte);
					BinaryWriter1.Flush();
					// Repositionnement de l'index de début à la fin du dernier buffer et remplit le buffer
					StartIndex += BufferSize;
					ReturnValue = MyReader.GetBytes(0, StartIndex, OutByte, 0, BufferSize);
				}
				// Ecriture du buffer restant
				BinaryWriter1.Write(OutByte, 0, (int)ReturnValue);
				BinaryWriter1.Flush();
				// Fermeture du fichier de sortie
				BinaryWriter1.Close();
				FileStream1.Close();
			}
			// Fermeture du reader
			MyReader.Close();
			// Fermeture de la connexion
			Connection.Close();
		}
		catch(Exception ex)
		{
			Console.Error.WriteLine(ex);
		}
	}

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.