// 得到一个连接Access数据库的OleDbConnection对象DBConn
// 以下将图片写入表T_Image的其它代码.
oleDBConn.Open();
System.Data.OleDb.OleDbDataAdapter dbAdapter=new OleDbDataAdapter("Select * From T_Image",oleDBConn);
// 得到数据表
DataSet dataSet=new DataSet();
dbAdapter.Fill(dataSet,"T_Image");
DataTable table=dataSet.Tables[0];
// 读取图像文件
System.IO.FileStream fileStream=new System.IO.FileStream(@"E:\xx\xx.jpg",System.IO.FileMode.Open,System.IO.FileAccess.Read);
byte[] data=new byte[fileStream.Length];
fileStream.Read(data,0,(int)fileStream.Length);
fileStream.Close(); // 给数据行赋值
DataRow row=table.NewRow();
//row[0]为自动生成的值
row[1]="图片";
row[2]=data; //第三列的数据类型为ole对象
table.Rows.Add(row); // 将列添加到数据表
table.AcceptChanges();
//到此row[2]里有数据,我用 table.DataSet.WriteXml(@"D:\xx.xml");
// 结果文件xx.xml里面是有数据的. //接着执行 更新,往数据库中插入数据
int i=dbAdapter.Update(dataSet,"T_Image");
在执行更新操作时,i值始终为0,更新操作失败,无法将数据插入数据库中,怎么回事???? // 释放
oleDBConn.Close();
oleDBConn.Dispose();
// 以下将图片写入表T_Image的其它代码.
oleDBConn.Open();
System.Data.OleDb.OleDbDataAdapter dbAdapter=new OleDbDataAdapter("Select * From T_Image",oleDBConn);
// 得到数据表
DataSet dataSet=new DataSet();
dbAdapter.Fill(dataSet,"T_Image");
DataTable table=dataSet.Tables[0];
// 读取图像文件
System.IO.FileStream fileStream=new System.IO.FileStream(@"E:\xx\xx.jpg",System.IO.FileMode.Open,System.IO.FileAccess.Read);
byte[] data=new byte[fileStream.Length];
fileStream.Read(data,0,(int)fileStream.Length);
fileStream.Close(); // 给数据行赋值
DataRow row=table.NewRow();
//row[0]为自动生成的值
row[1]="图片";
row[2]=data; //第三列的数据类型为ole对象
table.Rows.Add(row); // 将列添加到数据表
table.AcceptChanges();
//到此row[2]里有数据,我用 table.DataSet.WriteXml(@"D:\xx.xml");
// 结果文件xx.xml里面是有数据的. //接着执行 更新,往数据库中插入数据
int i=dbAdapter.Update(dataSet,"T_Image");
在执行更新操作时,i值始终为0,更新操作失败,无法将数据插入数据库中,怎么回事???? // 释放
oleDBConn.Close();
oleDBConn.Dispose();
http://dotnet.aspx.cc/article/9154bc99-df64-4e2d-b096-26c99ce464be/read.aspx