Accueil > > > PROCÉDURE INSERTION OU MISE À JOUR DONNÉES D'UN UTILISATEUR
PROCÉDURE INSERTION OU MISE À JOUR DONNÉES D'UN UTILISATEUR
Information sur la source
Description
cette procédure a pour rôle de mettre à jour la table USER a partir d'un autre table ou vue si l'utilisateur existe déja, on va rafraichir les Informations si l'utilisateur n'existe pas, on va donc le créer
Source
- CREATE PROCEDURE dbo.AddOrUpdateUser
- AS
- DECLARE
- @MatriculeSalarie as nvarchar(50),
- @NumSalarie as nvarchar(50),
- @Nom as nvarchar(50),
- @Prenom as nvarchar(50),
- @Num_adherent as int,
- @Situation_Familiale as nvarchar(50),
- @Nb_Enfant as int,
- @Categorie as nvarchar(50),
- @Service as nvarchar(50),
- @Famille_Categorie as nvarchar(50)
-
-
-
-
- -- Utilisation d'un curseur pour parcourir tout les données
- DECLARE
- Curseur1 CURSOR FOR
- SELECT DISTINCT MatriculeSalarie, SA_CompteurNumero, Nom, Prenom, Num_Adhesion, SituationFamille, NB_Enfant, Catégorie, Service
- FROM VIEW_SAl_Information
- WHERE (DateHist IS NULL) AND (hstDate_Famil IS NULL)
- ORDER BY SA_CompteurNumero
-
-
-
- OPEN Curseur1
-
- FETCH NEXT FROM Curseur1 INTO @MatriculeSalarie , @NumSalarie , @Nom , @Prenom ,@Num_adherent , @Situation_Familiale ,@Nb_Enfant ,@Categorie , @Service
-
- WHILE @@FETCH_STATUS = 0
-
- BEGIN
- IF exists(SELECT Matricule FROM dbo.Dossier_Personnel WHERE (dbo.Dossier_Personnel.Matricule = @MatriculeSalarie))
- -- Dans cette partie, le Compte existe déja, on a donc juste besoin de rafraichir les Informations
- BEGIN
- UPDATE
- dbo.Dossier_Personnel
- SET
- dbo.Dossier_Personnel.Nom = @Nom,
- dbo.Dossier_Personnel.Prenom = @Prenom,
- dbo.Dossier_Personnel.Num_adherent = @Num_adherent,
- dbo.Dossier_Personnel.Situation_Familiale = @Situation_Familiale,
- dbo.Dossier_Personnel.Nb_Enfant = @Nb_Enfant,
- dbo.Dossier_Personnel.Categorie = @Categorie,
- dbo.Dossier_Personnel.Service = @Service
-
- WHERE
- dbo.Dossier_Personnel.Matricule = @MatriculeSalarie
- END
- ELSE
- -- Dans cette partie, le compte n'existe pas, on va donc le créer
- BEGIN
- INSERT INTO dbo.Dossier_Personnel
- (Matricule,
- NumSalarie,
- Nom,
- Prenom,
- Num_adherent,
- Situation_Familiale,
- Nb_Enfant,
- Categorie,
- Service)
- VALUES
- (@MatriculeSalarie,
- @NumSalarie,
- @Nom,
- @Prenom,
- @Num_adherent,
- @Situation_Familiale,
- @Nb_Enfant,
- @Categorie,
- @Service)
-
- END
-
- FETCH NEXT FROM Curseur1 INTO @MatriculeSalarie , @NumSalarie , @Nom , @Prenom ,@Num_adherent , @Situation_Familiale ,@Nb_Enfant ,@Categorie , @Service
-
- END
-
- CLOSE Curseur1
- DEALLOCATE Curseur1
-
CREATE PROCEDURE dbo.AddOrUpdateUser
AS
DECLARE
@MatriculeSalarie as nvarchar(50),
@NumSalarie as nvarchar(50),
@Nom as nvarchar(50),
@Prenom as nvarchar(50),
@Num_adherent as int,
@Situation_Familiale as nvarchar(50),
@Nb_Enfant as int,
@Categorie as nvarchar(50),
@Service as nvarchar(50),
@Famille_Categorie as nvarchar(50)
-- Utilisation d'un curseur pour parcourir tout les données
DECLARE
Curseur1 CURSOR FOR
SELECT DISTINCT MatriculeSalarie, SA_CompteurNumero, Nom, Prenom, Num_Adhesion, SituationFamille, NB_Enfant, Catégorie, Service
FROM VIEW_SAl_Information
WHERE (DateHist IS NULL) AND (hstDate_Famil IS NULL)
ORDER BY SA_CompteurNumero
OPEN Curseur1
FETCH NEXT FROM Curseur1 INTO @MatriculeSalarie , @NumSalarie , @Nom , @Prenom ,@Num_adherent , @Situation_Familiale ,@Nb_Enfant ,@Categorie , @Service
WHILE @@FETCH_STATUS = 0
BEGIN
IF exists(SELECT Matricule FROM dbo.Dossier_Personnel WHERE (dbo.Dossier_Personnel.Matricule = @MatriculeSalarie))
-- Dans cette partie, le Compte existe déja, on a donc juste besoin de rafraichir les Informations
BEGIN
UPDATE
dbo.Dossier_Personnel
SET
dbo.Dossier_Personnel.Nom = @Nom,
dbo.Dossier_Personnel.Prenom = @Prenom,
dbo.Dossier_Personnel.Num_adherent = @Num_adherent,
dbo.Dossier_Personnel.Situation_Familiale = @Situation_Familiale,
dbo.Dossier_Personnel.Nb_Enfant = @Nb_Enfant,
dbo.Dossier_Personnel.Categorie = @Categorie,
dbo.Dossier_Personnel.Service = @Service
WHERE
dbo.Dossier_Personnel.Matricule = @MatriculeSalarie
END
ELSE
-- Dans cette partie, le compte n'existe pas, on va donc le créer
BEGIN
INSERT INTO dbo.Dossier_Personnel
(Matricule,
NumSalarie,
Nom,
Prenom,
Num_adherent,
Situation_Familiale,
Nb_Enfant,
Categorie,
Service)
VALUES
(@MatriculeSalarie,
@NumSalarie,
@Nom,
@Prenom,
@Num_adherent,
@Situation_Familiale,
@Nb_Enfant,
@Categorie,
@Service)
END
FETCH NEXT FROM Curseur1 INTO @MatriculeSalarie , @NumSalarie , @Nom , @Prenom ,@Num_adherent , @Situation_Familiale ,@Nb_Enfant ,@Categorie , @Service
END
CLOSE Curseur1
DEALLOCATE Curseur1
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Curseur et procédure stockée erreur [ par humnanamouch ]
Bonjour J'ai un problème quand je veux modifier ma procédure stockée sous sql server. J'ai l'erreur "L'utilisateur n'a pas l'autorisati
Probleme de variable dans une procédure stockée [ par mastercatz ]
Bonjour A chaque fois que j'essaye de créer ma procédure stockée j'obtient la même erreur (parmis d'autres): Msg 1087, Level 15, State 2, Procedure v
Probleme de variable dans une procédure stockée [ par mastercatz ]
Bonjour A chaque fois que j'essaye de créer ma procédure stockée j'obtient la même erreur (parmis d'autres): Msg 1087, Level 15, State 2, Procedure v
fonction qui retourne un curseur [ par fatou69 ]
salut tout le monde, je suis en train de devellopez une fonction sous oracle qui permet de retourner un curseur et précisament une ou plusieurs lignes
SQL Server : concatenation [ par aieeeuuuuu ]
Bonjour, Je suis sous SQL server 2000, j'ai fait une procédure stockée qui prend deux paramétres. dans une autre procédure stockée, je veux appele
Insertion de données Ascenseur dans base de donnée [ par ecolopolo ]
Bonjour j'ai un problème avec ma base de donnée que je tente de créer... les informations de type ascenseur (ou <option....>.....
Statistique [ par biiru ]
Bonjours à tous,Une fois de plus je sollicite votre aide ^^En fait je dois faire une statistique d'un formulaire et je comptait la faire avec l'aide d
CLAUSE LIKE + procédure stockée. [ par KC62 ]
Bonjour a tous, voila j'ai un petit souci qui me pose de nombreux soucis car je n'arrive pas a le résoudre... Je souhaiterais éxécuté une procédure st
créer une procédure stockée qui renvoie des données [ par bossun ]
salut,je ne connais pas vraiment oracle. je voudrais créer une procédure stockée qui me renvoie des données pour des besoins spécifiques...dans sql se
Condition sur insertion [ par Myke ]
Bonjour à tous!J'utilise SqlServer 2000. J'ai une table avec plusieurs champ. Lorsqu'un utilisateur veut inserer un nouvel enregistrements je dois ver
|
Derniers Blogs
PB LORS DE L'INSTALLATION SHAREPOINT 2010.PB LORS DE L'INSTALLATION SHAREPOINT 2010. par Patrick Guimonet
Lors de l'installation de SharePoint 2010, j'ai rencontré un problème de plantage à l'étape 5 du configuration Wizard. Ca se termine sur cet écran : Et en analysant le fichier de journalisation, on remarque vers la fin des 15000 et quelques lign...
Cliquez pour lire la suite de l'article par Patrick Guimonet [WF4] AJOUTER DES CONTRAINTES à UNE ACTIVITé (2/2)[WF4] AJOUTER DES CONTRAINTES à UNE ACTIVITé (2/2) par JeremyJeanson
Après mon précédent article qui attaque les contraintes par la fasse Nord de l'Everest. passons à la seconde possibilité offerte par WF4 pour valider une activité : la metadata . Je vous en ai déjà toucher un ou deux mots. La metadata dans WF4 est un élém...
Cliquez pour lire la suite de l'article par JeremyJeanson [WF4] AJOUTER DES CONTRAINTES à UNE ACTIVITé (1/2)[WF4] AJOUTER DES CONTRAINTES à UNE ACTIVITé (1/2) par JeremyJeanson
De WF3 à WF4 pas mal de choses on été changées pour faciliter la vie des développeurs, mais certain points peuvent sembler obscures. comme les contraintes. Pour vous guider, je me lance dans une série de deux articles. Ils présenterons deux approches poss...
Cliquez pour lire la suite de l'article par JeremyJeanson [ASP.NET] NE PAS SE FAIRE AVOIR PAR IHTTPMODULE ET SA MéTHODE INIT()[ASP.NET] NE PAS SE FAIRE AVOIR PAR IHTTPMODULE ET SA MéTHODE INIT() par tja
Beaucoup de développeurs pensent que lorsqu'on créé et enregistre un IHttpModule, il n'en existe qu'une seule instance et la méthode Init() sera appelée qu'une fois.
C'est faux
Cela peut vraiment créer des bugs subtils dont en ne se rend pas compte ...
Cliquez pour lire la suite de l'article par tja [MSTD10] SHAREPOINT 2010 ET TEAM FOUNDATION SERVER[MSTD10] SHAREPOINT 2010 ET TEAM FOUNDATION SERVER par phil
Un post rapide pour vous informer de la disponibilité de la vidéo de ma présentation sur SharePoint 2010 & Team Foundation Server. http://www.microsoft.com/france/vision/mstechdays10/Webcast.aspx?EID=20215d48-02e3-4d43-8c36-e53505c3b316 Dans la ...
Cliquez pour lire la suite de l'article par phil
Forum
DATEPARTDATEPART par lilia04
Cliquez pour lire la suite par lilia04
Logiciels
Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods Konvertor (4.00)KONVERTOR (4.00)Le logiciel est un gestionnaire multimedia affichant, jouant et convertissant plus de 2000 format... Cliquez pour télécharger Konvertor
|