0

我有连接到访问数据库的 ac# 应用程序,然后我使用 openfiledialog 查找图像,然后显示有关此的详细信息,然后我想将其保存到数据库中。但是当我尝试这样做时,我得到一个错误,说它太大了。那么解决这个问题的方法是什么?我希望保存文件路径,然后稍后可以在我的主窗口中查看它。

 private void button2_Click(object sender, EventArgs e)
    {
        DataRow drNewRow = m_dtMedia.NewRow();
        drNewRow["File_Path"] = textBox1.Text;
        drNewRow["Subject"] = textBox2.Text;
        drNewRow["Title"] = textBox3.Text;
        drNewRow["Keyword_Search"] = textBox4.Text;
        drNewRow["MediaType"] = textBox5.Text;
        m_dtMedia.Rows.Add(drNewRow);

        m_daDataAdapter.Update(m_dtMedia);
        m_rowPosition = m_dtMedia.Rows.Count - 1;
        this.ShowCurrentRecord();
        this.Close(); 

这有效,因为我尝试只输入字母,它将保存和更新数据库,另一方面保存图像不会。

错误信息

支持 OLeDb 异常

该字段太小,无法接受您尝试添加的数据量。尝试插入或粘贴更少的数据。

4

1 回答 1

2

上传和下载 BLOB 到 Microsoft Access这将解释如何在 Access 数据库中存储图像。

Microsoft Access 将 BLOB 数据存储在具有 OLE 对象数据类型的字段中。如果从 SQL 语句创建表,则数据类型为 IMAGE(类似于 SQL Server)。

例如

CREATE TABLE File (
     FileName VARCHAR(255),
     Size INT,
     Type VARCHAR(255),
     DateUploaded DATETIME,
     File IMAGE,
     CONSTRAINT File_PK PRIMARY KEY(FileName)
)
于 2012-05-09T18:55:58.303 回答