Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Téléchargement de documents dans SQL Server 2008 à l'aide d'asp.net C#

Ce tutoriel devrait fonctionner pour n'importe quel fichier, pas seulement Excel. La clé est dans cette partie :

Stream fs = FileUpload1.PostedFile.InputStream;
BinaryReader br = new BinaryReader(fs);  //reads the   binary files
Byte[] bytes = br.ReadBytes((Int32)fs.Length);  //counting the file length into bytes
query = "insert into Excelfiledemo(Name,type,data)" + " values (@Name, @type, @Data)"; //insert query
com = new SqlCommand(query, con);
com.Parameters.Add("@Name", SqlDbType.VarChar).Value = filename1;
com.Parameters.Add("@type", SqlDbType.VarChar).Value = type;
com.Parameters.Add("@Data", SqlDbType.Binary).Value = bytes;
com.ExecuteNonQuery();
Label2.ForeColor = System.Drawing.Color.Green;
Label2.Text = "File Uploaded Successfully";

Ce qui se passe essentiellement ici, c'est que le flux de fichiers est transformé en un tableau d'octets qui est stocké sous forme de blob de données dans votre base de données. Ceci peut être utilisé pour N'IMPORTE QUEL type de fichier. Assurez-vous simplement de conserver le nom de fichier (ou au moins l'extension) comme dans l'exemple ci-dessus afin de savoir de quel type de fichier il s'agit lorsque vous le retransformez en fichier sur disque.