如何将 *.dat (或 *.txt) 文件插入 MS Access DB on C#



我有一些任务。我必须实现一个文本编辑器,能够将文件保存到/从ms访问数据库下载文件,但我不知道该怎么做。有我的尝试(它不起作用,只保存文件)。我知道,这很愚蠢,但是..

    OleDbCommand cmd = new OleDbCommand();
    OleDbConnection cn = new OleDbConnection(
            @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=....Database1.accdb;Persist Security Info=True");
    private void Button_Click_2(object sender, RoutedEventArgs e)
    {
            if(textBox1.Text != null)
            {
                FileInfo file = new FileInfo(textBox1.Text.ToString() + ".dat");
                using (BinaryWriter bw = new BinaryWriter(file.OpenWrite()))
                {
                    string text = textBox2.Text.ToString();
                    bw.Write(text);
                    try
                    {
                        cn.Open();
                        cmd.CommandText = "INSERT INTO info ( files.FileData ) values (@file)";
                        cmd.Parameters.Add("@file", file);
                        cmd.ExecuteNonQuery();
                        cn.Close();
                    }
                    catch (Exception ex)
                    {
                        cn.Close();
                        MessageBox.Show(ex.Message.ToString());
                    }
                    textBox1.Text = null;
                    textBox2.Text = null;
                }
            }
    }  

有没有办法直接将文件上传到数据库?

如果按照您对问题的评论中所建议的那样,您希望将文件存储在 Access 数据库的 Attachment 字段中,那么在另一个问题中有一个 C# 代码:

将图像存储到 Access 数据库的"附件"字段中

笔记:

    使用
  1. SQL 无法将文件附加到数据库记录。您需要使用 ACE DAO(如上面引用的文章所示)。

  2. 某些文件类型被阻止进入附件字段。此处的Microsoft支持文章中列出了这些文件类型。

相关内容

  • 没有找到相关文章

最新更新