Как загрузить и загрузить файл word в базу данных SQL Server?
пожалуйста, помогите мне.Я хочу, чтобы этот код очень плохо.
//first create your table and connection then apply this code i hope it will work using System.Data.SqlClient; using System.io; public class FrmFiles { private string fname; private void BunifuImageButton3_Click(object sender, EventArgs e) { this.Close(); } void Pics(void Dim, string[] fullfilename, void =, void OpenFileDialog1.FileName.Split, void \) { Fname = fullfilename.Last.ToString(); FileStream Fsteream = new FileStream(OpenFileDialog1.FileName, FileMode.Open); BinaryReader BReader = new BinaryReader(Fsteream); MyFile = BReader.ReadBytes(Fsteream.Length); Fsteream.Close(); BReader.Close(); TxtName.Text = fname; } private void BtnBrowse_Click(object sender, EventArgs e) { OpenFileDialog1.ShowDialog(); LbPicture.Text = OpenFileDialog1.FileName; Pics; } private void BtnSave_Click(object sender, EventArgs e) { pics(); connection(); sql = (" insert Into Tb_File values (\'" + (TxtNumber.Text + ("\',\'" + (fname + "\',@pic)")))); sqlcmd = new SqlCommand(sql, sqlcon); SqlParameter pic = new SqlParameter("@pic", SqlDbType.Image); pic.Value = MyFile; sqlcmd.Parameters.Add(pic); Sqlcmd.ExecuteNonQuery(); MsgBox("Successful.............", MsgBoxStyle.Information, "Message"); } private void BunifuThinButton21_Click(object sender, EventArgs e) { Connection(); sqlcmd.CommandText = "Select Name,Files from Tb_File"; sqldr = sqlcmd.ExecuteReader; sqldr.Read(); SaveFileDialog saveFileDialog1 = new SaveFileDialog(); saveFileDialog1.FileName = sqldr.Item[0]; FileStream FStream = new FileStream(sqldr(0).ToString, FileMode.Create, FileAccess.Write); saveFileDialog1.Filter = ("txt files (*.txt)|*.txt|Word 97-2003(*.doc)|*.doc|Word Document(*.doc)|*.doc|Excel 97-Excel 2003 Work" + "book(*.xls)|*.xls|Excel Document(*.xlsx)|*.xlsx|PDF Document(*.Pdf)|*.Pdf|All files (*.*)|*.*|Bitmap" + " Files|*.bmp" + "|Gif Files|*.gif|JPEG Files|*.jpg"); saveFileDialog1.FilterIndex = 7; saveFileDialog1.RestoreDirectory = true; if ((saveFileDialog1.ShowDialog() == DialogResult.OK)) { FStream = saveFileDialog1.OpenFile(); if (FStream) { IsNot; null; byte[] filebytes = ((byte[])(sqldr(1))); FStream.Write(filebytes, 0, filebytes.Length); FStream.Close(); } } } }
Создайте таблицу с именем файла в вашей базе данных со следующими полями:
Имя Столбца Тип Данных
ID uniqueidentifier
Имя файла nvarchar(150)
Тип файла nvarchar(100)
Размер файла int
FileContent varbinary(макс.)
Используя varbinary(Max) , вы можете сохранить любой тип контента в базе данных
Преобразование файла из потока в байтовый массив.
если вы используете элемент управления FileUpload, используйте fallowing..
byte[] fileContent = new byte[FileUpload1.PostedFile.ContentLength]; FileUpload1.PostedFile.InputStream.Read(fileContent, 0, FileUpload1.PostedFile.ContentLength);
command.Parameters.Add("@FileContent", SqlDbType.VarBinary, -1).Value = fileContent;