IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

[C# - Winform - SqlClient] insertion en utilisant une SP


Sujet :

Windows Forms

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    120
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 120
    Par défaut [C# - Winform - SqlClient] insertion en utilisant une SP
    Mon appli en C# gère des données dans une base SQLServer.
    Je souhaite utiliser une SP qui insére des données et qui me retournerait la PK de la ligne inséré dans la table.
    Si j'utilise un , comment récupérer un Paramètre qui aurait été déclaré en (dans ce cas je pourrai lui attribuer SET @IdTable=SCOPE_IDENTITY() dans la SP). Mais je vois pas comment le lire ???? je dois avoir des peaux de sauss devant les yeux...

  2. #2
    Rédacteur
    Avatar de JauB
    Homme Profil pro
    Freelancer
    Inscrit en
    Octobre 2005
    Messages
    1 792
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Maroc

    Informations professionnelles :
    Activité : Freelancer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 792
    Par défaut
    pour moi je fais comme suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    oSQL = " INSERT  INTO bordereau_versement(Ref_Bord,Date_Bord,Date_Echeance,mt_bord,Site,id_agence,id_banque,Date_Create,Date_Modif,Id_User) " & _
                   " VALUES  ('" & ref_bdx_m & "','" & Date_Bord & "','" & SelectedDate & "'," & MntBord2 & ",'" & SelectedSite & "'," & id_agence & "," & id_banq & ",'" & Date.Now & "','" & Date.Now & "','" & ID_USERR & "')" & _
                   " SELECT  id_bordereau FROM bordereau_versement WHERE id_bordereau = @@IDENTITY"
            cmd.CommandText = oSQL
            cmd.Connection = cn
            ID_BORD_ = CStr(cmd.ExecuteScalar) 'pour recupérer l'ID qui vient dêtre insérer
    Mes articles, Mon Blog

    Rubrique Jasper/iReport :
    ------- Forum Jasper --------
    ----- FAQ Jasper/iReport -----


  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    120
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 120
    Par défaut
    Merci pour ta réponse !

    j'y avais pensé, mais je cherchais un moyen de faire ça en n'utilisant qu'une seule requete SQL (car tout ceci intervient dans un contexte ou mon serveur a une foultitude de requetes à exécuter dans des boucles while().
    Je voulais essayer de trouver la réponse la + rapide.
    Avec le INSERT et un SELECT sur @@IDENTITY, ça fait deux.
    Mais si c'est la seule façon de faire ???

Discussions similaires

  1. Utiliser une winform comme console application
    Par programaniac dans le forum Windows Forms
    Réponses: 7
    Dernier message: 10/03/2009, 10h48
  2. utilisation de insert or update : (une requête dynamique de mise à jour)
    Par demahom_INFO dans le forum Développement de jobs
    Réponses: 1
    Dernier message: 22/10/2008, 17h45
  3. Réponses: 2
    Dernier message: 02/07/2008, 02h26
  4. [VB.NET]Utiliser un INSERT INTO avec une VIew Access
    Par Ashleyriot dans le forum Accès aux données
    Réponses: 3
    Dernier message: 23/11/2006, 18h31
  5. [WinForms] Utiliser une bdd
    Par webrider dans le forum Général Dotnet
    Réponses: 8
    Dernier message: 28/09/2006, 09h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo