#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:
Попробуйте также сохранить полное имя с путем к файлу.. у меня была похожая проблема, и я решил ее, сохранив полный путь с именем файла…