public bool DataSetUpdaerToAccess(System.Data.DataSet TempDataSet,string TableName)
{
System.Data.OleDb.OleDbConnection ConnectObject = new OleDbConnection(GetConnectStr());
System.Data.OleDb.OleDbDataAdapter UpdateDataAdapter = new OleDbDataAdapter("Select * From " + TableName,ConnectObject);
System.Data.OleDb.OleDbCommandBuilder CMDBuilder = new OleDbCommandBuilder(UpdateDataAdapter);
UpdateDataAdapter.InsertCommand = CMDBuilder.GetInsertCommand();
UpdateDataAdapter.DeleteCommand = CMDBuilder.GetDeleteCommand();
UpdateDataAdapter.UpdateCommand = CMDBuilder.GetUpdateCommand();
if(TempDataSet.Tables[TableName].Rows.Count < 1)
{
return true;
}
else
{
try
{
TempDataSet.Tables[TableName].Columns.Remove("总页数");
TempDataSet.Tables[TableName].Columns.Remove("总行数");
TempDataSet.Tables[TableName].Columns.Remove("总金额");
}
catch
{
}
System.Data.DataSet NewDataSet = new DataSet();
System.Data.DataTable AddTable = TempDataSet.Tables[TableName].Copy();
AddTable.Clear();
NewDataSet.Tables.Add(AddTable);
for(int i = 0;i < TempDataSet.Tables[TableName].Rows.Count;i++)
{
DataRow AddRow = NewDataSet.Tables[TableName].NewRow();
for(int j = 0;j < NewDataSet.Tables[TableName].Columns.Count;j++)
{
string ColumnsNameStr = NewDataSet.Tables[TableName].Columns[j].ColumnName;
AddRow[ColumnsNameStr] = TempDataSet.Tables[TableName].Rows[i][ColumnsNameStr];
}
NewDataSet.Tables[TableName].Rows.Add(AddRow);
}
try
{
ConnectObject.Open();
}
catch
{
}
NewDataSet.AcceptChanges();
try
{
UpdateDataAdapter.Update(NewDataSet.Tables[TableName]);
}
catch
{
ConnectObject.Close();
return false;
}
ConnectObject.Close();
return true;
}
}代码运行不报错,但是就是更新不到数据库中;
{
System.Data.OleDb.OleDbConnection ConnectObject = new OleDbConnection(GetConnectStr());
System.Data.OleDb.OleDbDataAdapter UpdateDataAdapter = new OleDbDataAdapter("Select * From " + TableName,ConnectObject);
System.Data.OleDb.OleDbCommandBuilder CMDBuilder = new OleDbCommandBuilder(UpdateDataAdapter);
UpdateDataAdapter.InsertCommand = CMDBuilder.GetInsertCommand();
UpdateDataAdapter.DeleteCommand = CMDBuilder.GetDeleteCommand();
UpdateDataAdapter.UpdateCommand = CMDBuilder.GetUpdateCommand();
if(TempDataSet.Tables[TableName].Rows.Count < 1)
{
return true;
}
else
{
try
{
TempDataSet.Tables[TableName].Columns.Remove("总页数");
TempDataSet.Tables[TableName].Columns.Remove("总行数");
TempDataSet.Tables[TableName].Columns.Remove("总金额");
}
catch
{
}
System.Data.DataSet NewDataSet = new DataSet();
System.Data.DataTable AddTable = TempDataSet.Tables[TableName].Copy();
AddTable.Clear();
NewDataSet.Tables.Add(AddTable);
for(int i = 0;i < TempDataSet.Tables[TableName].Rows.Count;i++)
{
DataRow AddRow = NewDataSet.Tables[TableName].NewRow();
for(int j = 0;j < NewDataSet.Tables[TableName].Columns.Count;j++)
{
string ColumnsNameStr = NewDataSet.Tables[TableName].Columns[j].ColumnName;
AddRow[ColumnsNameStr] = TempDataSet.Tables[TableName].Rows[i][ColumnsNameStr];
}
NewDataSet.Tables[TableName].Rows.Add(AddRow);
}
try
{
ConnectObject.Open();
}
catch
{
}
NewDataSet.AcceptChanges();
try
{
UpdateDataAdapter.Update(NewDataSet.Tables[TableName]);
}
catch
{
ConnectObject.Close();
return false;
}
ConnectObject.Close();
return true;
}
}代码运行不报错,但是就是更新不到数据库中;
解决方案 »
- asp.net 图片上传
- 为什么在textbox中录入时,有换行会出错
- 关于IIS网址重写的问题 IIS筛选器设置
- owc11 图形锯齿问题.在线等!高手进.......
- 再次開貼:請問如何动态的設置DataList某行特定单元格的背景色?(单元格中没有使用label,textbox等控件),在線等,感激不盡!!!
- 高手们帮看看
- 请问大家有没有好的。NET项目
- RequiredFieldValidator验证控件的问题
- 定义右键菜单。
- System.Data.SQL不存在????
- 添加datagrid里面的内容到数据库里,只添加一次,但是出线了两个同样的,是不是哪里写错了
- 奇怪的问题请教解决? 在线等
{
Response.Write(exc.Message.ToString());
}
让它报错看看
catch(Exception e)
{
Response.Write(e.ToString());
}
每个catch都要改才能看出是那错了
是不是权限不够?把数据库改成everyone可写
还有这种更新方式好像需要表里面有主键
{
Response.Write(e.ToString());
}
看看一切就会明了!