begin process at 2010 03 18 07:25:51
  Trouver un code source :
 
dans
 
Accueil > Forum > 

SQL

 > 

SQL Server, MSDE, SQL Express

 > 

Procédures Stockées

 > 

Procedure Insert du dernier ID


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Procedure Insert du dernier ID

vendredi 14 décembre 2007 à 17:42:19 | Procedure Insert du dernier ID

ecureuilmasque

Bonjour,
Je veux recupérer le dernier ID lors du dernier insert avec Select @@IDENTITY.
Voici la procedure :
ALTER PROCEDURE sp_insertbug_IHM_Bug

    @Assignation nvarchar(50),
    @Priorité int,
    @Sujet nvarchar(100),
    @Détail nvarchar(max),
    @NotifyList nvarchar(max),

AS
BEGIN
    SET NOCOUNT ON;

    INSERT INTO IHM_BugTrack_Detail
                (Sujet,Détail,D_Enregistrement,NotifyList)
    VALUES        (@Sujet,@Détail,Getdate(),@NotifyList);

SELECT @@IDENTITY as ID

    INSERT INTO IHM_BugTrack
               (Assignation, Status, Priorité,ID_Detail,ID_Appli)
    VALUES     (@Assignation,'Ouvert',@Priorité,ID,9);

Le Message d'erreur : Le nom "ID" n'est pas autorisé dans ce contexte.
Les expressions valides sont des constantes, des expressions constantes et (dans certains contextes) des variables.
Les noms de colonnes ne sont pas autorisés.

Je comprends bien mais comment alros passer cette valeur à mon deuxieme INSERT INTO?

vendredi 14 décembre 2007 à 18:23:58 | Re : Procedure Insert du dernier ID

gilletcsteph

Membre Club
Moi je verrais plus un truc comme ça, une variable sans @, il aime pas trop sql server...

BEGIN
    SET NOCOUNT ON;

    INSERT INTO IHM_BugTrack_Detail
                (Sujet,Détail,D_Enregistrement,NotifyList)
    VALUES        (@Sujet,@Détail,Getdate(),@NotifyList);

DECLARE @id int
SET @id = SELECT @@IDENTITY


    INSERT INTO IHM_BugTrack
               (Assignation, Status, Priorité,ID_Detail,ID_Appli)
    VALUES     (@Assignation,'Ouvert',@Priorité,@id,9);


J'ai pas testé et je sais pas si la syntaxe est la bonne pour ce que je te propose, mais c'est dans ce genre la. Déclaration de vairable puis assignation d'une valeur.


Steph
vendredi 14 décembre 2007 à 20:15:13 | Re : Procedure Insert du dernier ID

ecureuilmasque

Non, j'obtiens : Syntaxe incorrecte vers le mot clé 'SELECT'.
vendredi 14 décembre 2007 à 20:47:06 | Re : Procedure Insert du dernier ID

ecureuilmasque

Réponse acceptée !
Par contre en suivant tes conseils ...

DECLARE @id INT;
SET @id = SCOPE_IDENTITY()

marche trés bien. merci


Cette discussion est classée dans : insert, id, procedure, dernier, nvarchar


Répondre à ce message

Sujets en rapport avec ce message

INSERT a l'id qu'on vient de DELETE [ par Bassman ] Voila j'aimerais savoir sous mysql comment forcé l'insertion dès le "départ", c'est a dire, par exemple dans votre table utilisateur vous venez d'en s Faire plusieurs if dans un procedure stockee [ par chris81 ] bonjour,comment puis je faire pour verifier plusiseurs if dans la meme procedure stockee c'est a direif not exist(SELECT Id FROM...) et if not exists( recupéré l'id d'un INSERT [ par Bowen123 ] Sous SQL Server,Je souhaite récupéré mon id (clef primaire auto incrémenté) immédiatement apres un insert.Y a til une solution autre que de refaire un Pb Insert into !!!! Urgent ... [ par tousimages ] Voila je n'arrive pas a soumettre cette requete a accessil y a 21 champsid --> numeroAutocivilite, nom , prenom , societe, adr1, adr2 --> textecodepos update + recuperer dernier id [ par wally88 ] Bonjour, voila j'aimerais recuperer le dernier id de ma table lors d'un update, j'utilise cette requete ... :update bien set bien_image" + numImage + Probleme d'insert sql a partir d'un code C [ par caro4200 ] Bonjour,J'ai une procédure stockée qui s'excute bien lorsque je l'appelle de dataviewer.Par contre, lorsque je l'appelle à partir d'un code C, on sort @@identity apres Insertion [ par issoux ] Bonjour,  J'utilise dans une stored procedure trois  Insert . J'ai besoin de l'id du premier insert pour le mettre dans le deuxieme Insert . Mes id so last_insert_id() [ par engelho ] Bonjour,J'utilise un insert pour ajouter une ligne a une table contenant une clef primaire générée automatiquement. Je souhaite récupérer cette clef p Recuperer ID pas encore crée [ par Zachs ] Hello j'aimerai pouvoir recuperer l'ID d'un enregistrement que je n'ai pa encore crée pour ou qu'une fois qu'il est crée je puisse le reprendre pour l Comment annuler un INSERT dans un Trigger ? [ par vladam ] Bonjour, j'ai un trigger suivant :Que dois-je mettre à la place de "-- Annuler l'insert" pour annuler l'insert en cours ?ALTER</


Nos sponsors


Appels d'offres

Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,281 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales