J'ai un ensemble d'ID dans un DataTable C#. Dans le même temps, j'ai une table contenant ces identifiants et d'autres données aussi. Mon exigence est de supprimer les enregistrements qui contiennent les ID spécifiés dans la table de données (s'il y a des tuples avec ces ID).SqlDataAdapter ne supprime pas les lignes de la table
J'utilise SqlDataAdapter pour cela.
SqlCommand command = new SqlCommand(text, con);
command.UpdatedRowSource = UpdateRowSource.None;
PrepareCommand(command, con, null, type, text, commandParas);
SqlDataAdapter adpt = new SqlDataAdapter();
adpt.DeleteCommand = command;
adpt.UpdateBatchSize = 2;
adpt.Update(dataTable);
connection.Close();
Voici ce que je veux dire par,
- "text" is the name of the stored procedure containing the delete command. The argument given to this stored procedure is the ID (picked from the list of IDs contained in the data table)
- "commandParas" is the argument passed to the stored procedure.
- "dataTable" contains the Ids used to delete the rows from SQL table. It contains only one column but several rows.
Mais cela ne se traduit pas dans les lignes spécifiées RETIRE la table.
EDIT
J'ai donné la procédure stockée ci-dessous
CREATE PROCEDURE someName(@ID INT)
AS
BEGIN
DELETE FROM SampleTable
WHERE [email protected]
END
Ce que j'ai donné ci-dessous est le code où je crée la table de données
DataTable dt=new DataTable("abc");
dt.clear();
dt.Columns.Add(empId,typeof(int));
foreach(SomeClass t SomeList)
dt.Rows.Add(t.IdNo);
Ai-je fait une erreur?
Existe-t-il une exigence spécifique pour utiliser SqlAdapter pour supprimer des enregistrements? Vous pouvez utiliser SqlCommand pour cela. –
Visitez [this] (http://stackoverflow.com/help/mcve) pour apprendre ** Comment créer un exemple minimal, complet et vérifiable **. Vous n'avez pas fourni de procédure stockée SQL, 'PrepareCommand' et comment vous transmettez id à la procédure stockée et tout ça. –
@Selva TS: tout ce qui peut m'aider à supprimer les lignes est bien. Mais je dois passer l'ensemble des ID, pas un seul ID. C'est un must. Avez-vous une solution? –