我有一个连接到访问数据库的c#应用程序,然后我使用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异常
该字段太小,无法接受您尝试添加的数据量。尝试插入或粘贴较少的数据。
答案 0 :(得分:2)
Uploading and Downloading BLOBs to 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)
)