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

MS SQL Server Discussion :

beug avec mon procédure stockée


Sujet :

MS SQL Server

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Mai 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Mai 2014
    Messages : 4
    Par défaut beug avec mon procédure stockée
    Bonjour,

    j' ai créé une procédure stockée pour faire un "Insert".
    Quand je l' exécute il m'écrit réussie, mais si je vérifie l'insertion je trouve rien.

    Est ce que quelqu'un peut m' aider ?

    * Merci*

  2. #2
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2009
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2009
    Messages : 623
    Par défaut
    Tu peux nous fournir le code de ta procédure stockée ? Tu exécutes comment ta procédure stockée ?

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Mai 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Mai 2014
    Messages : 4
    Par défaut beug avec mon procedure stockée
    voici le code

    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    ALTER PROCEDURE [dbo].[SplitBarreCodePalette] 
        -- Add the parameters for the stored procedure here
     
    AS
     
        declare @a1 varchar(50)
        declare @b1 varchar(50)
        declare @c1 varchar(50)
        declare @d1 varchar(50)
        declare @e1 varchar(50)
        declare @f1 varchar(50)
        declare @g varchar(50)
     
        declare @a2 varchar(50)
        declare @b2 varchar(50)
        declare @c2 varchar(50)
        declare @d2 varchar(50)
        declare @e2 varchar(50)
        declare @f2 varchar(50)
     
        declare @a3 varchar(50)
        declare @b3 varchar(50)
        declare @c3 varchar(50)
        declare @d3 varchar(50)
        declare @e3 varchar(50)
        declare @temp1 varchar(50)
        declare @temp2 varchar(50)
        declare @temp3 varchar(50)
     
     
      DECLARE getCURE1 CURSOR
        FAST_FORWARD
         FOR SELECT BC1,BC2,BC3 from ScanParPalette where status=0
     
      OPEN getCURE1
      FETCH next from getCURE1 into @temp1,@temp2,@temp3
     
    while 1=1
     
    BEGIN
        BEGIN
      if @@fetch_status <> 0
      break
      END
      BEGIN
           select @a1 =SUBSTRING(@temp1,1,1) 
           select @b1= SUBSTRING(@temp1,2,6)
           select @c1= SUBSTRING(@temp1,8,1)
           select @d1= SUBSTRING(@temp1,9,2)
           select @e1= SUBSTRING(@temp1,11,12) 
           select @f1= SUBSTRING(@temp1,23,3)
           select @g= 100
     
     
           select @a2 =SUBSTRING(@temp2,1,1) 
           select @b2= SUBSTRING(@temp2,2,2)
           select @c2= SUBSTRING(@temp2,4,6)
           select @d2= SUBSTRING(@temp2,10,6)
           select @e2= SUBSTRING(@temp2,16,4) 
           select @f2= SUBSTRING(@temp2,20,7)
     
           select @a3 =SUBSTRING(@temp3,1,1) 
           select @b3= SUBSTRING(@temp3,2,7)
           select @c3= SUBSTRING(@temp3,9,4)
           select @d3= SUBSTRING(@temp3,13,4)
           select @e3= SUBSTRING(@temp3,17,2)
     
            insert into ProjectF.dbo.ProductIdentification(BarreCodeIdentifier,
                                                                 PmiItemCode,
                                                               PartUsageIndicator,
                                                               PaletteStatusIndicator,
                                                               PurchaseOrderNo,
                                                               BaleIdentification,
                                                               ProductionOrder)
     
           values(@a1,@b1,@c1,@d1,@e1,@f1,@g)
     
           insert into ProjectF.dbo.ProductInformation(BarreCodeIdentifier,
                                                                ManufactureSequenceNumber,
                                                                PmiVendorNumber,
                                                                PaletteDate,
                                                                 ExpiryDate,
                                                                 ManufacturingBatchId)
     
           values(@a2,@b2,@c2,@d2,@e2,@f2)
     
            insert into ProjectF.dbo.ProductQuantity(BarreCodeIdentifier,
                                                           TotalQuatity,
                                                           NetWeight,
                                                           GrossWeight,
                                                           IdentifierToDefine)
             values(@a3,@b3,@c3,@d3,@e3)
     
              update dbo.ScanParPalette set Status=1   where BC1=@temp1
              FETCH next from getCURE1 into @temp1,@temp2,@temp3 
              END
                END    
     close getCURE1
    deallocate getCURE1

  4. #4
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2009
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2009
    Messages : 623
    Par défaut
    Et tu l'exécute comment ? Comme ceci ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    exec [dbo].[SplitBarreCodePalette]
    Par contre coté esthétique, le while 1 = 1, hum comment dire... Tu pourrais plutôt faire un WHILE @@FETCH_STATUS = 0.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Mai 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Mai 2014
    Messages : 4
    Par défaut beug avec mon procédure stockée
    Pour l'exécuter je fais un clic droit sur le nom de la procédure et je clic sur exécuter.
    Mais le code c 'est bon.

    Comment faire pour l'exécuter toutes les une minute.
    Cordialement

  6. #6
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2009
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2009
    Messages : 623
    Par défaut
    Pour l'exécuter toutes les minutes, si tu n'es pas en version Express, il suffit de créer un job dans le SQL Agent qui est planifié toutes les minutes et qui exécute ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    exec [dbo].[SplitBarreCodePalette]

  7. #7
    Membre expérimenté
    Avatar de Lyche
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2007
    Messages
    2 523
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 523
    Billets dans le blog
    4
    Par défaut
    Question bête mais... Un joli MERGE plutôt qu'un curseur dégueulasse et contre performant, ça serait pas un petit peu mieux?
    Rejoignez la communauté du chat et partagez vos connaissances ou vos questions avec nous

    Mon Tutoriel pour apprendre les Agregations
    Consultez mon Blog SQL destiné aux débutants

    Pensez à FAQ SQL Server Ainsi qu'aux Cours et Tuto SQL Server

  8. #8
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 009
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 009
    Billets dans le blog
    6
    Par défaut
    Jamais vu un code aussi dégeulasse !

    3 vue de splittage et 3 requêtes serait suffisant pour tout faire !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  9. #9
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 009
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 009
    Billets dans le blog
    6
    Par défaut
    Allez, bonne âme je vous donne une solution avant de partir en vacances....

    1 - la vue (une seule suffit)

    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
    CREATE VIEW dbo.V_ScanParPalette_tmp
    AS
    SELECT SUBSTRING(BC1, 1, 1) AS A1, 
           SUBSTRING(BC1, 2, 6) AS B1,
           SUBSTRING(BC1, 8, 1) AS C1,
           SUBSTRING(BC1, 9, 2) AS D1,
           SUBSTRING(BC1,11,12) AS E1,
           SUBSTRING(BC1,23, 3) AS F1,
           SUBSTRING(BC2, 1, 1) AS A2,
           SUBSTRING(BC2, 2, 2) AS B2,
           SUBSTRING(BC2, 4, 6) AS C2,
           SUBSTRING(BC2,10, 6) AS D2,
           SUBSTRING(BC2,16, 4) AS E2,
           SUBSTRING(BC2,20, 7) AS F2,
           SUBSTRING(BC3, 1, 1) AS A3, 
           SUBSTRING(BC3, 2, 7) AS B3,
           SUBSTRING(BC3, 9, 4) AS C3,
           SUBSTRING(BC3,13, 4) AS D3,
           SUBSTRING(BC3,17, 2) AS E3
    FROM   ScanParPalette 
    WHERE  "STATUS"=0;
    GO
    2 - la procédure

    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
    42
    43
    CREATE PROCEDURE dbo.SplitBarreCodePalette_NEW
    AS
     
    SET NOCOUNT ON;
     
    DECLARE @g VARCHAR(50) = 100,
            @e NVARCHAR(1250);       
     
    BEGIN TRANSACTION;
    SET TRANSACTION ISOLATION LEVEL REPEATABLE READ;
    BEGIN TRY
     
       INSERT INTO ProjectF.dbo.ProductIdentification
              (BarreCodeIdentifier, PmiItemCode, PartUsageIndicator, PaletteStatusIndicator, PurchaseOrderNo, BaleIdentification, ProductionOrder)
       SELECT  A1,                  B1,          C1,                 D1,                     E1,              F1,                 @g
       FROM   dbo.V_ScanParPalette_tmp;
     
       INSERT INTO ProjectF.dbo.ProductInformation
              (BarreCodeIdentifier, ManufactureSequenceNumber, PmiVendorNumber, PaletteDate, ExpiryDate, ManufacturingBatchId)
       SELECT  A2,                  B2,                        C2,              D2,          E2,         F2
       FROM   dbo.V_ScanParPalette_tmp;
     
       INSERT INTO ProjectF.dbo.ProductQuantity
              (BarreCodeIdentifier, TotalQuatity, NetWeight, GrossWeight, IdentifierToDefine)
       SELECT  A3,                  B3,           C3,        D3,          E3                   
       FROM   dbo.V_ScanParPalette_tmp;
     
       UPDATE dbo.ScanParPalette 
       SET    "STATUS" = 1  
       WHERE  "STATUS" = 0;         
     
       COMMIT TRANSACTION;
     
    END TRY
    BEGIN CATCH
       SET @e = ERROR_MESSAGE();
       ROLLBACK TRANSACTION;
       RAISERROR('%s', 16, 1, @e);
    END CATCH;   
     
    SET TRANSACTION ISOLATION LEVEL READ COMMITTED;
     
    GO
    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  10. #10
    Futur Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Mai 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Mai 2014
    Messages : 4
    Par défaut aspx
    Bonjour,
    comment manipuler une balise div dans aspx.

  11. #11
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Par défaut
    Bonjour,

    Cette question ne concerne pas SQL Server.

    Merci de poster dans le bon Forum.

    « Je ne cherche pas à connaître les réponses, je cherche à comprendre les questions. »
    - Confucius -

    Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL
    Tous les cours Office
    Solutions d'Entreprise



Discussions similaires

  1. Récupérer plusieurs lignes avec des procédures stockées
    Par GPZ{^_^} dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 12/03/2007, 14h16
  2. [PEAR][MDB2] Erreur avec une procédure stockée
    Par mikedavem dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 04/01/2007, 17h49
  3. Réponses: 2
    Dernier message: 06/12/2006, 09h54
  4. [format des données avec une procédure stockée]
    Par viny dans le forum PostgreSQL
    Réponses: 7
    Dernier message: 10/03/2005, 14h24
  5. Problème avec une procédure stockée
    Par in dans le forum Langage SQL
    Réponses: 4
    Dernier message: 27/05/2003, 16h33

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