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

Développement SQL Server Discussion :

Procédure stockée utilisation d une fonction


Sujet :

Développement SQL Server

  1. #1
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut Procédure stockée utilisation d une fonction
    Je tente de récupérer le résulat contenu dans un String de façon splité
    Jordan, Jean-Marie

    pour les affectés à une variable

    J'ai donc la fonction split suivante

    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
     
    ALTER FUNCTION [dbo].[Split] (    
        @RowData NVARCHAR(MAX),
        @Delimeter NVARCHAR(MAX)
    )
    RETURNS @RtnValue TABLE (
        ID INT IDENTITY(1,1),
        Data NVARCHAR(MAX)
    ) 
    AS
    BEGIN 
        DECLARE @Iterator INT
        SET @Iterator = 1
     
        DECLARE @FoundIndex INT
        SET @FoundIndex = CHARINDEX(@Delimeter,@RowData)
     
        WHILE (@FoundIndex>0)
        BEGIN
            INSERT INTO @RtnValue (data)
            SELECT 
                Data = LTRIM(RTRIM(SUBSTRING(@RowData, 1, @FoundIndex - 1)))
     
            SET @RowData = SUBSTRING(@RowData,
                    @FoundIndex + DATALENGTH(@Delimeter) / 2,
                    LEN(@RowData))
     
            SET @Iterator = @Iterator + 1
            SET @FoundIndex = CHARINDEX(@Delimeter, @RowData)
        END
     
        INSERT INTO @RtnValue (Data)
        SELECT Data = LTRIM(RTRIM(@RowData))
     
        RETURN
    END
    Que j'aimerais utilisé dans ma procédure stocké :

    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
     
    ALTER PROCEDURE [dbo].[updateAuteur]
     @Numero_affaire varchar(10) OUTPUT,
     @Nom_auteur_plans varchar (500) OUTPUT
    AS
    BEGIN
    	DECLARE @Str NVARCHAR(MAX)
    	SET rowcount 0
    	SET @AuteurCount SELECT count(*) FROM  [dbo].[Split] (@Nom_auteur_plans, ',')
    	SET @AuteurNom varchar(100)
    	SET @AuteurPrenom varchar(100)
    	WHILE (@@rowcount > 0)
    	BEGIN
     
    	END
    END
    GO
    Je ne sais pas comment traduire le fait que le résutat à l'index 0 (ou 1) est le nom et le résultat à l'index 1 (ou 2) est le prenom

    Comment puis-je procéder ?

  2. #2
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    L'instruction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SET @AuteurCount SELECT count(*) FROM  [dbo].[Split] (@Nom_auteur_plans, ',')
    Doit être :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT @AuteurCount = count(*) FROM  [dbo].[Split] (@Nom_auteur_plans, ',')
    @++

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/03/2013, 15h05
  2. Réponses: 2
    Dernier message: 08/02/2013, 12h10
  3. Réponses: 1
    Dernier message: 07/06/2010, 18h05
  4. [SQL-Server] Lancement via PHP d'une procédure stockée utilisant un DTS
    Par Fallen_Leaf dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 20/02/2008, 09h49
  5. Utilisation d'une fonction dans une procedure
    Par MaxiMax dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 09/08/2005, 15h51

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