Procedure ou function

Résolu
cs_danyclassique Messages postés 94 Date d'inscription samedi 1 décembre 2007 Statut Membre Dernière intervention 7 novembre 2010 - 23 juil. 2008 à 09:26
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 - 23 juil. 2008 à 15:31
Bonjour a tous .
J aurai voulu savoir si quelqu un saurait comment creer une procedure qui me permeterait de :
Voila , j ai une table qui contient 3 champs (username,et proffession et favorite ) et 2 clees sur username et proffession
J ai une autre table qui contient les memes champs .
J ai dans mon code c# un bouton qui  me permet d ajouter des donnees dans la deuxieme table
J ai un autre bouton qui lui ,me permet de faire un update de la deuxiemme table sur la premiere tout en verifiant pour chaque rows de la premiere table  en fonction des 2 clees ,s ils existent deja : Si oui , on fait l update si non,
on fait un insert
Je vous remercie tous d avance.

8 réponses

crn_c21 Messages postés 302 Date d'inscription samedi 24 janvier 2004 Statut Membre Dernière intervention 4 février 2011
23 juil. 2008 à 14:39
Il te faut faire un curseur sur la première table recherchant tous les enregistrements

Dans ce curseur tu UPDATE chaque enregistrement; si après lUPDATE le @@ROWCOUNT est à zéro, cela veut dire que l'enregistrment n'existe pas, donc tu fais un INSERT.

Tout ca en SQL SERVER (vu que tu n'as pas précisé!)
3
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
23 juil. 2008 à 10:51
Salut,

Moi perso je ne sais pas le faire mais j'aimerai bien apprendre le SQL plus profondément !

Par contre, ça m'étonerai que quelqun te fasse cette fonction gratuitement !

a++

Si la réponse vous convient, pensez : Réponse acceptée !
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
23 juil. 2008 à 14:45
Salut crn_c21,

Sais tu ou je pourai approfondir mes connaissances SQL ?

Au fait pour le fait qu'il n'a pasprécisé qu'il était sous SQL Server, il n'a pas besoin, our le savoir, il faut regarder la catégorie !

Vous êtes ici : Thèmes / SQL / SQL Server, MSDE, SQL Express / Functions / procedure ou function

a++

Si la réponse vous convient, pensez : Réponse acceptée !
0
crn_c21 Messages postés 302 Date d'inscription samedi 24 janvier 2004 Statut Membre Dernière intervention 4 février 2011
23 juil. 2008 à 14:54
Salut Nicomilville,

Je fais bcp de Transac-SQL, mais je t'avoue que j'ai appris sur le tas en passant mes nuits sur le Net.

Par contre si tu es coincé sur une proc je peux te filer un coup de main

Cordialement
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
23 juil. 2008 à 15:06
ba en fait je voudrai apprendre a mieux me servir de SQL et a utiliser des truc du genre :

LEFT JOIN
RIGHT JOIN
CREATE PROC
CREATE FUNCTION
...

Cest pas grave, je vais continuer a chercher...

Je ne suis pas encore coincé sur une procedure car je ne sais toujours pas ce que c'est ni a quoi sa sert...

Par contre je suis en train de créer une fonction mais je ne sais pas comment forumer en SQL :

Si il y a une quote ou une double quote alors en mettre une autre derrière...

Je crois qu'il existe une fonction SUBSTRING en SQL mais je ne sais pas encore m'en servir...

Je vais me débrouiller pour ça et après je la posterai sur le site tout fier parce que j'aurai réussi ma première fonction SQL

Par contre j'ai été un peu refroidi sur le SQL car je viens d'installer SQL Server Standard édition sur windows Vista Mais ça n'a pas installé management studio donc j'ai été obligé d'installer management studio express, et je ne sais pas si c'est plus limité que management studio standard !

a++

Si la réponse vous convient, pensez : Réponse acceptée !
0
crn_c21 Messages postés 302 Date d'inscription samedi 24 janvier 2004 Statut Membre Dernière intervention 4 février 2011
23 juil. 2008 à 15:20
Pour les JOIN :

Table_1 INNER JOIN Table_2 on Table_1.ID=Table_2.Id donne les enregistrements qui coprrespondent dans les 2 tables

Table_1 LEFT OUTER  JOIN Table_2 on Table_1.ID=Table_2.Id donne les enregistrements de la Table_1 (join gauche) et ceux de la table 2 qui correspondent

Table_1 RIGHT OUTER  JOIN Table_2 on Table_1.ID=Table_2.Id donne les
enregistrements de la Table_2(join droit) et ceux de la table 1 qui
correspondent

Pour les CREATE, il permettent de créer des tables (CREATE TABLE) des INDEX (CREATE INDEX) des procédures (CREATE PROC)....

Pour les quotes (et sommairement), il en faut pour tous les champs alphanumériques :

set @MonNom='Christophe'
set @MonAge=41

Pour le SUBSTRING :

je cherche les 3 caractères après le 5ème : SUBSTRING(@MonChamp,5,3)

Perso, je travaille avec le SQL SERVER 2005 PRO 64
0
cs_danyclassique Messages postés 94 Date d'inscription samedi 1 décembre 2007 Statut Membre Dernière intervention 7 novembre 2010
23 juil. 2008 à 15:24
 Oui autant pour moi c est du sqlserveur.
Je crois que je viens de trouver un debut de code qui rejoint aussi ton idee.
J e vais essayer de de mettre tout ca en place et je vous tiens tous au courant
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
23 juil. 2008 à 15:31
merci pour tout ces renseignements,

Pour les quotes, il s'agit en fait d'une fonction qui met des quotes derrière ou devant les quotes qu'il y a dans un texte pour qu'elle soit accepté !

Pour SQL serveur, je ne peus rien faire !

Et merci pour les renseignement sur les JOIN, j'avais une petite notion des create mais je n'étais sur de rien, je te remercie !

a++

Si la réponse vous convient, pensez : Réponse acceptée !
0
Rejoignez-nous