Accueil > Forum > > > > Récupérer l'ID après un insert
Récupérer l'ID après un insert
mercredi 18 juillet 2007 à 10:14:26 |
Récupérer l'ID après un insert

equinoxe83
|
Bonjour, J'ai une proc stockée d'insertion. Je souhaite qu'ell retourne la valeur de la clé d'index créé. J'ai essayé avec return ou output mais lors de la génération de la requête le système n'en veut pas ... Quelqu'un aurait-il un exemple ? Merci d'avance.
|
|
mercredi 18 juillet 2007 à 22:20:18 |
Re : Récupérer l'ID après un insert

yann_lo_san
|
-- un insert insert into table values(v1, v2)
-- le retour avec select select @@identity as 'RETURN_VALUE'
-- ou avec return return @@identity
|
|
vendredi 27 juillet 2007 à 10:34:57 |
Re : Récupérer l'ID après un insert

equinoxe83
|
Bonjour Yann, Désolé pour le délai, il m'a fallu faire une pause dans mon développement ... Merci pour ta réponse! C'est effectivement ce qu'il m'avait semblé mais peux-tu m'indiquer comment je peux réaliser ce select ou le return ? En effet, je suis débutant et ne comprend pas ou placer ces instructions. J'ai bien tenté d'utiliser le return en fin de ma procédure d'insertion mais il n'en veut pas. Il me dit que la procédure stockée n'a pas été créée. j'utiliser : INSERT INTO table ... VALUES ... RETURN @@identity Si j'enlève le return, il l'accepte. Pour le select, je ne peux pas l'inclure en fin de requ^te me semble-t-il. Si ? (Comme tu vois, j'en suis au début ...) Merci de ton aide.
|
|
vendredi 27 juillet 2007 à 21:53:14 |
Re : Récupérer l'ID après un insert

yann_lo_san
|
Salut,
USE maBase GO
CREATE PROCEDURE maProc @unParam int output AS BEGIN
DECLARE @unRetourSelect int
INSERT INTO maTable(champ1, champ2) VALUES(val1, val2)
IF( @@rowcount > 0 AND @@error <> 0 ) BEGIN -- avec output SET @unParam = @@identity
-- OU avec select SET @unRetourSelect = @@identity SELECT @unRetourSelect as 'RETURN_VALUE'
END ELSE BEGIN -- erreur avec output SET @unParam = -1
-- OU erreur avec select SELECT -1 as 'RETURN_VALUE' END
END
Bon courage !
|
|
vendredi 27 juillet 2007 à 21:56:32 |
Re : Récupérer l'ID après un insert

yann_lo_san
|
Je rectifie le @@error, il faut qu'il soit = à 0
IF( @@rowcount > 0 AND @@error = 0 )
@@rowcount doit etre à 1 après un insert et @@error à 0
Ceci pour etre sur que l'INSERT n'a pas échoué.
|
|
samedi 28 juillet 2007 à 09:19:00 |
Re : Récupérer l'ID après un insert

equinoxe83
|
Bonjour Yann et Merci pour la proc ! J'avais déjà tenter une telle approche mais le Pb c'est que dès que j'essaie de modifier la proc proposée par le générateur (de VWD), il aboie (impossible de l'analyser). J'avais mis celà sur le compte de mon inexpérience mais en plaçant la tienne (modifiée pour mes besoins, bein entendu), c'est ma même chose. Est-ce normal ? dois-je passer outre ?? Sinon, dès que j'aura réglé ce Pb, comment je fais pour exploiter la valeur retournée (en VB). Pour exposer le contacte, je réalise l'insert à partir d'un formview et j'imagine que c'est dans l'évènement itemInserted que je pourrai récupérer cette valeur. Je me trompe ? J'ai vu un post qui évoquait l'ajout d'un param à un objet dataset. C'est par là que je récupère mon ID ?? Soit dit en passant, je trouve curieux que MS n'ai pas prévu plus de doc sur ce point qui me semble pourtant essentiel ... En tout cas, merci pour ton aide précieuse !
|
|
samedi 28 juillet 2007 à 17:43:22 |
Re : Récupérer l'ID après un insert

yann_lo_san
|
Réponse acceptée !
As tu essayé de remplacer CREATE PROC par ALTER PROC Si la proc est déjà dans le moteur, il faut un alter.
Désolé mais j'utilise CSharp et je ne connais pas le formView, mais du coup avec un SqlCommand c'est super simple :
De mémoire :
SqlCommand cmd = new SqlCommand("Proc", connexion); cmd.CommandType = CommandType.storedProcedure;
SqlParameters p = new SqlParameters("@unParam"); p.Direction = Direction.output; cmd.Parameters.Add(p);
// exécute la cmd
// pour le récupérer : Int32 ret = Int32.Parse(cmd.Parameters["@unParam"]);
Je pense qu'en VB y'a les mêmes classes genre SqlConnection, SqlCommand, SqlDataReader ect...
A plus.
|
|
samedi 28 juillet 2007 à 19:00:31 |
Re : Récupérer l'ID après un insert

equinoxe83
|
Merci pour ton aide Yann ... et ta patience !! Pour la proc, il suffisait de l'ouvrir directement (sans passer par le générateur de requêtes) pour y inclure les éléments que tu m'as transmis. Pour la récupération de l'ID, pas de Pb pour le C#! Je vois l'a construction et vait m'en inspirer sur mon objectdatasource. Je posterai un dernier message pour donner la traduc en VB. Encore merci pour ton assistance !!!! @+ Frédéric PS : Pour mémo, les Formview sont utilisabales en Vb et C#. Pas mal du tout ... pour des débutants comme moi (hi,hi)! Bye
|
|
Cette discussion est classée dans : récupérer, insert, id
Répondre à ce message
Sujets en rapport avec ce message
Récupérer l'ID après un INSERT INTO [ par audile ]
Bonjour,Est-ce qu'une fonction en ASP.NET permet de récupérer l'identifiant de l'enregistrement qu'on vient d'insérer avec un INSERT INTO ?Merci d'ava
Detailsview, Guid, Insert [ par dji200 ]
Bonjour à tous,J'aimerais que vous m'aidiez à faire un truc simple mais visiblement non prévu par .net 2.0J'ai un detailsview, j'aimerais que l'on ins
Récupérer la valeur d'un champ avec GridView [ par rom268 ]
Bonjour, j'ai un énorme probléme !Pour faire simple j'ai un tableur GridView en relation avec une base de donnée, avec 3 champs. Un pour le nom, un po
Récupérer l'ID [ par primactif ]
Bonjourje cherche à passer l'id d'une image dans un script pour l'animation Ajax.Exempleasp<font color="#0000f
Récupérer le nom de l'ID dans un GridView [ par Portman07 ]
Bonjour,Je vous écris pour vous faire part de ma difficulté à récupérer le nom d'un ID dans un GridView.Je récupère d'une base de données une liste de
Récupérer des données d'une base [ par MaKirby ]
Bonjour, J'ai un petit problème concernant la récupération de données à partir d'une base de données SQLServer. Je voudrais récupérer certaines donn
StrSQL: insert into [ par rainah ]
Bonjour,Dépassée par les evenements, je vous envoie mon code.. si quelqu'un peut m'aider a resoudre:Fichier:: accueil.asp<input type="button" onClick=
Récupérer un paramètre URL dans une restriction d'un SQLdataSource [ par Fo0Zie ]
Bonjour à tous,Je voudrais récupérer mon paramètre URL pour le mettre dans une clause where de mon sqlDataSource qui sert à alimenter mon gridview.J'
Grid View récupérer l'id de la ligne sélection avec un imgButton [ par Fo0Zie ]
Bonjour à tous,J'ai un problème avec mon grid view. Je n'arrive pas à récupérer l'id et la valeur (le texte) de ma ligne sélectionné à l'aide d'un im
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Forum
STABILITé DU DéBIT 3GSTABILITé DU DéBIT 3G par benzekrighizlane
Cliquez pour lire la suite par benzekrighizlane
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|