как сохранить изображения, аудио, видео файлы в базу данных как ссылку?

#c#

#c#

Вопрос:

я не понимаю, как сохранить файл в базе данных, чтобы при загрузке приложения на веб-сервер пользователь мог загрузить этот файл. до сих пор я просто сохранял имя файла в базе данных, и это wrong.so нужно ли сохранять ссылку на базу данных? я запутался?есть предложения? до сих пор я использую этот код для хранения файла в базе данных,

 protected void dbInsert(string fileType,string fileName,string fileExt)
{
     String getSQL1 = "INSERT into tbluploadedfilesdetail (FileDownloaded,FileType,FileName,FileExt) VALUES (" 0 ",'" fileType "','" fileName "','" fileExt "');";

     MySqlConnection objMyCon1 = new MySqlConnection(strProvider);
     objMyCon1.Open();

     MySqlCommand cmd1 = new MySqlCommand(getSQL1, objMyCon1);
     cmd1.ExecuteNonQuery();
     objMyCon1.Close();
     dbLoad();
}
  

Ответ №1:

Все, что вы здесь делаете, это сохраняете имя файла на сервер, а не сам файл. Если вы хотите сохранить файл в базу данных, то тип поля базы данных должен быть двоичным. В Интернете есть много руководств, которые покажут вам, как это сделать. Смотрите http://www.codeproject.com/KB/aspnet/fileupload.aspx

Для MySQL вы должны использовать тип BLOB или его альтернативы. Ознакомьтесь http://www.abbeyworkshop.com/howto/lamp/my_fieldtypes/index.html

Ответ №2:

Почему вы не считываете байты из файлов и не записываете их в базу данных вы должны использовать изображение в качестве типа данных в базе данных.

Ответ №3:

Попробуйте также сохранить полное имя с путем к файлу.. у меня была похожая проблема, и я решил ее, сохранив полный путь с именем файла…