Aide Procédure stockée SQLserver

Résolu
divxovore Messages postés 8 Statut Membre -  
divxovore Messages postés 8 Statut Membre -
Bonjour,

Je souhaiterais créer une procédure stockée qui supprime des données dans n'importe quelle table de ma db.
Dans ma clause where j'aimerais concaténer le nom de ma table passer en paramètre avec 'ID'.
Exemple: Table CATEGORY. Colonne/Clé primaire IDCATEGORY.
Comment puis-je réaliser cela.

CREATE PROCEDURE DEL_INFOS (@Tablename varchar (20), @Val int)
AS
DECLARE @SQL VARCHAR(400);
SET @SQL = 'DELETE FROM ['+@Tablename+'] WHERE ID + ['+@Tablename+'] = ['+@Val+'] '
EXECUTE (@SQL);
GO

Merci d'avance.

2 réponses

  1. Heremion Messages postés 564 Statut Membre 102
     
    Bonjour Divxovore,

    La requête écrite ci-dessus te renvoie quoi dans @SQL?

    0
  2. divxovore Messages postés 8 Statut Membre
     
    Voila j'ai trouver la solution à ma requête:

    CREATE PROCEDURE DEL_INFOS (@Tablename varchar (20), @Id int )
    AS
    BEGIN
    DECLARE @SQL VARCHAR(200);
    DECLARE @Idtmp VARCHAR (10) = @Id;
    SET @SQL = 'DELETE FROM '+ @Tablename + ' WHERE ID'+@Tablename+ '=' + @Idtmp;
    EXECUTE (@SQL);
    END
    0