передача файлов между клиентским компьютером и базой данных сервера с использованием C # - PullRequest
0 голосов
/ 23 декабря 2010

У меня есть эта база данных SQL на серверном компьютере в сети, и я хочу, чтобы любой клиентский компьютер мог загружать и загружать файлы в базу данных и из нее соответственно, где файлы будут сохраняться в файловой системе компьютера-сервера и их метаданные будут храниться в базе данных.
Каков наилучший метод для выполнения этой задачи? и как мне реализовать это с помощью приложения C # winform? спасибо заранее @ _ @

Ответы [ 2 ]

0 голосов
/ 30 августа 2012
try
{
    if (txtFilePath.Text == pdfFilepath )
    {
        byte [] b=File .ReadAllBytes (pdfFilepath);
        SqlConnection con1=Connection.Conn();
        SqlCommand cmd=new SqlCommand ("insert into tbl_Document(Company_Id,FileNo,PdfFile)values(@cid,@fno,@file)",con1);
        cmd .Parameters .AddWithValue("@cid",txtCompanyId.Text);
        cmd .Parameters .AddWithValue("@fno",txtFileNumber.Text);
        cmd .Parameters .AddWithValue("@file",b);
        con1.Open();
        cmd .ExecuteNonQuery();
        con1.Close();
    }
    else
    {
        MessageBox.Show("Please give a valid file address.");
        this.Dispose();
    }
}
catch
{ 
    MessageBox.Show("Unable to Process.");
    this.Dispose();
}
0 голосов
/ 24 декабря 2010

Почему вы хотите, чтобы файлы были сохранены в базе данных? Файловая система (которая, как я уверен, и у рассматриваемого сервера) гораздо больше подходит для хранения и обслуживания файлов.

Если файлы должны находиться в базе данных, то вы, вероятно, просто захотите сохранить их в поле большого двоичного объекта. Конечно, в таблицу необходимо добавить дополнительные поля с данными о файлах. Имя файла, тип файла, может быть размер файла, если вам не нужно вычислять его по блобу на лету, возможно, пользователь, который его загрузил, время его загрузки и т. Д.

В этот момент вы будете взаимодействовать с ним, как и с любой другой записью базы данных в вашем приложении (пропуская пояснение для краткости, нет недостатка в учебниках по теме), с дополнительным этапом преобразования в и из байтовых массивов для данных BLOB-объектов. Также нет недостатка в примерах .

Но я должен вернуться к исходному вопросу. Зачем помещать файлы в реляционную базу данных?

...