编译提示:System.Data.MissingPrimaryKeyException: 表没有主键。
代码:
public void SavePhoto(string data_id,byte[] p_Blob,string imgType)
{
OracleConnection cn=new OracleConnection("User id=abc;Data Source=web;password=abc"); //oracle数据库
cn.Open();
OracleDataAdapter photoAdapter; //da
DataSet photoDataSet; //dataset
DataTable photoTable; //table
DataRow photoRow; //datarow
photoAdapter = new OracleDataAdapter("select imgtitle,imgdata from image where imgtitle='"+data_id+"'",cn);
photoDataSet= new DataSet("image");
string strSQL="select imgtitle,imgdata from image where imgtitle='"+data_id+"'";
OracleCommand acm=new OracleCommand(strSQL,cn);
OracleDataReader odr=acm.ExecuteReader();
Response.Write(strSQL);
photoAdapter.UpdateCommand = new OracleCommand("update image set imgdata = :vPHOTO where imgtitle = :vID",cn);
Response.Write("update image set imgdata = :vPHOTO where imgtitle = :vID");
photoAdapter.UpdateCommand.Parameters.Add(":vPHOTO",OracleType.Blob, p_Blob.Length,"imgdata");
photoAdapter.UpdateCommand.Parameters.Add(":vID",OracleType.VarChar,50,"imgtitle");
photoAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
photoAdapter.FillSchema(photoDataSet, SchemaType.Source,"image");
photoAdapter.Fill(photoDataSet,"image");
photoTable = photoDataSet.Tables["image"];
photoRow = photoTable.Rows.Find(data_id);//这句提示的错误
photoRow.BeginEdit();
if (p_Blob.Length != 0)
{
photoRow["imgdata"] = p_Blob;
}
photoRow.EndEdit();
photoAdapter.Update(photoDataSet,"image");
}
代码:
public void SavePhoto(string data_id,byte[] p_Blob,string imgType)
{
OracleConnection cn=new OracleConnection("User id=abc;Data Source=web;password=abc"); //oracle数据库
cn.Open();
OracleDataAdapter photoAdapter; //da
DataSet photoDataSet; //dataset
DataTable photoTable; //table
DataRow photoRow; //datarow
photoAdapter = new OracleDataAdapter("select imgtitle,imgdata from image where imgtitle='"+data_id+"'",cn);
photoDataSet= new DataSet("image");
string strSQL="select imgtitle,imgdata from image where imgtitle='"+data_id+"'";
OracleCommand acm=new OracleCommand(strSQL,cn);
OracleDataReader odr=acm.ExecuteReader();
Response.Write(strSQL);
photoAdapter.UpdateCommand = new OracleCommand("update image set imgdata = :vPHOTO where imgtitle = :vID",cn);
Response.Write("update image set imgdata = :vPHOTO where imgtitle = :vID");
photoAdapter.UpdateCommand.Parameters.Add(":vPHOTO",OracleType.Blob, p_Blob.Length,"imgdata");
photoAdapter.UpdateCommand.Parameters.Add(":vID",OracleType.VarChar,50,"imgtitle");
photoAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
photoAdapter.FillSchema(photoDataSet, SchemaType.Source,"image");
photoAdapter.Fill(photoDataSet,"image");
photoTable = photoDataSet.Tables["image"];
photoRow = photoTable.Rows.Find(data_id);//这句提示的错误
photoRow.BeginEdit();
if (p_Blob.Length != 0)
{
photoRow["imgdata"] = p_Blob;
}
photoRow.EndEdit();
photoAdapter.Update(photoDataSet,"image");
}
解决方案 »
- 请问datagrid如何让一条记录分多行显示?
- treeview用ontreenodepopulate实现动态加载后,如何取选中值
- 怎么样在SQL里面判断查询的内容是否为空
- 中国的同胞们,惊人的发现,asp.net漏洞出来了,相信不久便有说法了,!!!!!!!!!
- 各位高手帮帮忙,关于在asp.net中引用了master,div定位的问题?在线等.
- 安装visual studio.net的问题
- 在asp.net中怎样显示两个表的信息并且可以更新到数据库
- 如何读取页面(id)的值?
- 为什么编译的时候会去掉页面上表格所有的 style 标签
- datagrid分页后不能实现删除确认了
- 在ASP和ASP.net中使用cookies的奇怪问题
- 再次提问!!!希望高手帮忙!!急用!!关于读取xml的问题
把数据库里的表都设置上主建就好了,与程序没有关系