private void storetodata()
        {
            sqlconn.Open();
            SqlCeCommand comm = new SqlCeCommand();
            comm.CommandText = "Update "+SyncDataBackUp+" Set dataValue = @dataValue, dataSerialId = @newDataSerialId Where dataType = @dataType and tableId = @tableId and dataSerialId = @dataSerialId";
            comm.Connection = sqlconn;            SqlCeParameter para = comm.Parameters.Add("@dataValue", SqlDbType.NVarChar, 50);
            para.SourceColumn = "dataValue";
            para.SourceVersion = DataRowVersion.Current;
            para = comm.Parameters.Add("@dataType", SqlDbType.NVarChar, 50);
            para.SourceColumn = "dataType";
            para.SourceVersion = DataRowVersion.Original;
            para = comm.Parameters.Add("@tableId", SqlDbType.NVarChar, 50);
            para.SourceColumn = "tableId";
            para.SourceVersion = DataRowVersion.Original;
            para = comm.Parameters.Add("@dataSerialId", SqlDbType.Int);
            para.SourceColumn = "dataSerialId";
            para.SourceVersion = DataRowVersion.Original;
            para = comm.Parameters.Add("@newDataSerialId", SqlDbType.Int);
            para.SourceColumn = "dataSerialId";
            para.SourceVersion = DataRowVersion.Current;            da.UpdateCommand = comm;            comm = sqlconn.CreateCommand();
            comm.CommandText = "INSERT INTO "+SyncDataBackUp+" ([Id],[tableId],[dataType],[dataValue],[dataSerialId],[isSent]) VALUES (newid(),@tableId,@dataType,@dataValue,@dataSerialId,@isSent)";
            para = comm.Parameters.Add("@tableId", SqlDbType.NVarChar, 50);
            para.SourceColumn = "tableId";
            para.SourceVersion = DataRowVersion.Original;
            para = comm.Parameters.Add("@dataType", SqlDbType.NVarChar, 50);
            para.SourceColumn = "dataType";
            para.SourceVersion = DataRowVersion.Original;
            para = comm.Parameters.Add("@dataValue", SqlDbType.NVarChar, 50);
            para.SourceColumn = "dataValue";
            para.SourceVersion = DataRowVersion.Original;
            para = comm.Parameters.Add("@dataSerialId", SqlDbType.Int);
            para.SourceColumn = "dataSerialId";
            para.SourceVersion = DataRowVersion.Original;
            para = comm.Parameters.Add("@isSent", SqlDbType.NVarChar, 5);
            para.SourceColumn = "isSent";
            para.SourceVersion = DataRowVersion.Original;            da.InsertCommand = comm;            comm = sqlconn.CreateCommand();
            comm.CommandText = "DELETE from "+SyncDataBackUp+" WHERE Id = @Id";
            para = comm.Parameters.Add("@Id", SqlDbType.UniqueIdentifier);
            para.SourceColumn = "Id";
            para.SourceVersion = DataRowVersion.Original;            da.DeleteCommand = comm;
                        da.Update(ds.Tables[SyncData]);
            ds.Tables[SyncData].AcceptChanges();
            sqlconn.Close();
            
        }我的操作是:先在ds.Tables[SyncData]里面新增几条数据,然后把新增的再删除了,再修改几条从数据库中读出的数据。然后调用上面的函数更新数据库就会出现如题的错误。有时候显示DeleteCommand,有时候显示UpdateCommand错误。请问是怎么一回事。