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

Hibernate Java Discussion :

Comment utiliser les procédure stockées dans SQL Server à l'aide de requêtes nommées


Sujet :

Hibernate Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 11
    Points : 7
    Points
    7
    Par défaut Comment utiliser les procédure stockées dans SQL Server à l'aide de requêtes nommées
    Bonjour,

    Je suis débutant en hibernate (merci de votre indulgence face à certaines question que vous pourriez trouver idiotes...) et je voudrais appeler des procédures stockées dans SQL Server (essentiellement des SELECT).

    J'ai essayé de faire comme si je faisais une requête nommée classique (Ca, je sais faire! ) mais ca ne marche pas.

    Dans la doc de hibernate, j'ai trouvé ceci :

    "For Sybase or MS SQL server the following rules apply:

    The procedure must return a result set. Note that since these servers can/will return multiple result sets and update counts, Hibernate will iterate the results and take the first result that is a result set as its return value. Everything else will be discarded."

    J'ai essayé d'y adapter pour SQL Server mais ca ne marche pas. J'ai cherché sur le Web mais visiblement, beaucoup de personnes ont des problèmes avec les procédures stockées de SQL Server et je n'ai aps trouvé d'exemple tout bête.

    Ma procédure stockée est la suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    CREATE PROCEDURE [spGetAllUsers] AS
     
    BEGIN
     
    	SELECT idUser, NomComplet, Nom, Prenom
    	FROM users
     
    END
    GO
    idUser - int (4)
    NomComplet - nvarchar(50)
    Nom - nvarchar(30)
    Prenom - nvarchar(20)

    Cette requête va retourner plusieurs enregistrements. A partir de là, est-ce que je pourrais avoir un exemple complet de code (Appel de la requête nommée, contenu du fichier hbm.xml)

    De plus, est-ce que je pourrais avoir un exemple de code complet avec la même chose mais avec des paramètres dans la requête nommée?

    Après tout ca, je pense pouvoir me débrouiller tout seul...

    J'utilise SQL Server 2000 et SQL Server 2005

    Je vous remercie d'avance de votre aide.

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    C'est Ok : j'ai trouvé :

    Voici le fichier hbm.xml :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
     
    <hibernate-mapping>
        <class name="com.hibernate.spGetAllUsers" table="[User]">
            <!--La balise id signifie qu'on spécifie la clé primaire-->
            <id name="idUser" type="int"><!--Type de la variable correspondante dans le bean User.java-->
                <column name="idUser" sql-type="int(4)" not-null="true"/><!--Type du champ correspondant dans la BD-->
                <generator class="identity" />
            </id>
     
            <property name="NomComplet" type="string"> <!--Type de la variable correspondante dans le bean User.java-->
                <column name="NomComplet" sql-type="nvarchar(50)" not-null="true"/> <!--Type du champ correspondant dans la BD-->
            </property>
     
            <property name="Nom" type="string">
                <column name="Nom" sql-type="nvarchar(30)" not-null="true"/>
            </property>
     
            <property name="Prenom" type="string">
                <column name="Prenom" sql-type="nvarchar(20)" not-null="true"/>
            </property>
         </class>
     
         <sql-query name="spGetAllUsers" callable="true">	
             <return alias="UserSP" class="com.hibernate.spGetAllUsers">
                <return-property name="idUser" column="idUser"/>
                <return-property name="NomComplet" column="NomComplet"/>
                <return-property name="Nom" column="Nom"/>
                <return-property name="Prenom" column="Prenom"/>
             </return>	
             { call spGetAllUsers() }  
         </sql-query>
     
         <sql-query name="spGetUser" callable="true">	
             <return alias="UserSP" class="com.hibernate.spGetAllUsers">
                <return-property name="idUser" column="idUser"/>
                <return-property name="NomComplet" column="NomComplet"/>
                <return-property name="Nom" column="Nom"/>
                <return-property name="Prenom" column="Prenom"/>
             </return>	
             { call spGetUser(?) }  
         </sql-query>
    Pour l'appel, c'est comme les requêtes nommées!

    Personne n'a répondu alors j'espère que ca aidera quelques âmes en perdition...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment utiliser les données stockées dans un ArrayList?
    Par lsebe2 dans le forum Collection et Stream
    Réponses: 1
    Dernier message: 01/11/2014, 08h37
  2. Implémentation d'une DAL utilisant des procédures stockées avec SQL Server
    Par youness78 dans le forum Windows Presentation Foundation
    Réponses: 3
    Dernier message: 30/10/2013, 09h32
  3. comment insérer les caractères spéciaux dans sql server 2005
    Par dev-deb dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 03/10/2010, 13h08
  4. Procédure stockée dans sql server 2008
    Par aya02 dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 04/06/2010, 09h28
  5. Réponses: 2
    Dernier message: 20/03/2007, 17h00

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