Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

PROCEDURE STOCKEE => INSERTION DES DONNEES DANS UNE TABLE


Information sur la source

Catégorie :Base de données Source .NET ( DotNet ) Niveau : Débutant Date de création : 27/07/2004 Vu / téléchargé: 19 556 / 1 017

Note :
7,5 / 10 - par 2 personnes
7,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

Description

Inserer des données dans une table (Juillet 2004)
----------------------------------------------------------------

P'tit script ecrit en vb.net qui montre
comment on peut insérer des données ds une table ms sql serveur
à l'aide d'une procedure stockee.
Si quelqu'un desire recevoir le code en c# qu'il m'envoye un p'tit mail
je me ferais un plaisir de lui traduire...

J'ai mis pas mal de commentaire

Qu 'est ce qu'une procedure stockee et ces avantages :
-----------------------------------------------------------------------

Une procédure stockée est comme son nom l’indique, une procédure manipulant les données écrite dans un langage procédural spécifique au SGBD et qui est stockée dans la base de données.

Les procédures stockées permettent une plus grande sécurité.
En effet, grâce à elles, vous pouvez retirer tous les droits des utilisateurs
sur une table et les obliger à employer vos procédures stockées (qui elles feront
ce que vous voulez exactement comme vous le voulez).
Tandis qu'un utilisateur qui
a des droits d'écriture sur une table peut faire ce qu'il veut.
Votre code est centralisé et la maintenance facilitée.
En effet, si vous décidez
de changer la structure de votre base de données, il vous suffit de mettre à jour
votre procédure stockée sans avoir à reprogrammer toutes les applications clientes.
Les procédures stockées sont exécutées sur le serveur. Comme en général le serveur
est une machine bien plus puissante que les pc clients, les temps de réponses sont bien plus performants.
Les procédures stockées sont précompilées. Cela signifie que les requêtes ne doivent
plus être ni parsées ni interprétées. Ce qui augmente fortement les performances.

Elles sont rapide à utiliser, utilise la puissance du serveur,
elles soulagent donc un peu le trafic réseaux.

Pour en savoir plus encore ....suivez ce lien

http://www.delphifr.com/code.aspx?ID=22175



Pour faire tourner le script :
-------------------------------------

Il vous suffit d'ouvrir le fichier en .sql et de le coller
dans l'analyseur de requetes et de l'executer...
Cela créera la structure de la table ainsi que la procedure stockee nommé => ajout

ensuite ouvrez le fichier global.asax
et changez les propriete de la connection, mettez le nom de
votre base de donnees

ICI =>
myConnection.Connectionstring = "server=(local);Initial Catalog=NomDeVotreBase;trusted_connection=yes"


Voila enregistrez le tout...

ca roule


 

Source

  • --PROCEDURE STOCKEE AJOUT
  • create proc ajout
  • --DELCARATIONS VARIABLES
  • @insertnom varchar(20),
  • @insertprenom varchar(20),
  • @insertadresse varchar(50),
  • @insertville varchar(30),
  • @inserttelephone varchar(20)
  • --REQUETE INSERTION DS LA TABLE UTILISATEURS
  • as
  • insert into dbo.utilisateurs (nom, prenom, adresse, ville, telephone)
  • --VALEURS
  • values (@insertnom, @insertprenom, @insertadresse, @insertville, @inserttelephone)
  • '----- FORMULAIRE AJOUT DE CONTACT -----------
  • 'ENREGISTREMENT DES DONNEES DS LA BASE
  • Sub BtnValide_Click(sender As Object, e As EventArgs)
  • ' ---- VARIABLE CONTENANT LA PAGE DE REDIRECTION ----
  • dim RedirectionURL as string= "AfficheFile.aspx"
  • '---- SI LE TEXTBOXNOM EST VIDE ON AFFICHE UN P TIT MESSAGE ERREUR ---
  • IF (txtboxnom.text = "") then
  • labelerreur.text = "Veuillez completer le formulaire svp...!"
  • ' ----SINON ON ENvOIT TOUTES LES DONNEES A LA PROCEDURE STOCKEE ---
  • Else
  • ' --- RECUPERATION CONNECTION DS LE FICHIER GLOBAL.ASAX ---
  • myConnection = Ctype(Session("myConnection"),sqlConnection)
  • '--- DECLARATION -------
  • Dim Mycommand as new sqlcommand
  • MyCommand = New SqlCommand("ajout",MyConnection)
  • MyCommand.CommandType = commandType.StoredProcedure
  • Dim CommandAdapter As SqlDataAdapter
  • '---- PARAMETRE PASSE A LA PROCEDURE STOCKEE => AJOUT -----
  • '---- ON PLACE DONC LES VALEURS CONTENUES DS LES TEXTBOX ----
  • '--- DS LES VARIABLES POUR LA PROCEDURE STOCKEE ----
  • Mycommand.parameters.add("@insertnom", SqlDbType.nvarchar).value = Txtboxnom.text
  • Mycommand.parameters.add("@insertprenom", SqlDbType.nvarchar).value = TxtBoxprenom.text
  • Mycommand.parameters.add("@insertadresse", SqlDbType.nvarchar).value = TxtBoxad.text
  • Mycommand.parameters.add("@insertville", SqlDbType.nvarchar).value = TxtBoxvi.text
  • Mycommand.parameters.add("@inserttelephone", SqlDbType.nvarchar).value =TxtBoxtel.text
  • '----GESTION ERREURS -----------
  • Try
  • ' ---ici on met le code à exécuter risquant d’engendrer l’erreur
  • '----- EXECUTE LA COMMANDE -----
  • 'Exécute une instruction Transact-SQL sur la connexion et peut retourner
  • ' le nombre de lignes affectées
  • Mycommand.ExecuteNonQuery()
  • '---- REDIRECTION -------
  • Response.Redirect(RedirectionURL)
  • Catch
  • ' ---ici on place le code à exécuter si l’erreur se produit
  • labelerreur.text = "Une erreur s'est produite"
  • End Try
  • ' ----- FERMETURE CONNECTION ------
  • Myconnection.close()
  • 'FIN
  • end if
  • End Sub
--PROCEDURE STOCKEE AJOUT 

create  proc ajout 

--DELCARATIONS VARIABLES
@insertnom       varchar(20),
@insertprenom    varchar(20),
@insertadresse   varchar(50),
@insertville     varchar(30),
@inserttelephone varchar(20)


--REQUETE INSERTION DS LA TABLE UTILISATEURS
as
insert  into dbo.utilisateurs (nom, prenom, adresse, ville, telephone)
--VALEURS 
 values (@insertnom, @insertprenom, @insertadresse, @insertville, @inserttelephone)



'-----  FORMULAIRE AJOUT DE CONTACT -----------

'ENREGISTREMENT DES DONNEES DS LA BASE
    Sub BtnValide_Click(sender As Object, e As EventArgs)
    
       ' ---- VARIABLE CONTENANT LA PAGE DE REDIRECTION ----
    dim RedirectionURL as string= "AfficheFile.aspx"
    
    
     '----  SI LE TEXTBOXNOM EST VIDE ON AFFICHE UN P TIT MESSAGE ERREUR ---
    
      IF (txtboxnom.text = "") then
         labelerreur.text = "Veuillez completer le formulaire svp...!"
    
      ' ----SINON ON ENvOIT TOUTES LES DONNEES A LA PROCEDURE STOCKEE ---
    
      Else
    
      ' --- RECUPERATION CONNECTION  DS LE FICHIER GLOBAL.ASAX ---
        myConnection = Ctype(Session("myConnection"),sqlConnection)
    
    
       '--- DECLARATION -------
        Dim  Mycommand as new sqlcommand
        MyCommand = New SqlCommand("ajout",MyConnection)
        MyCommand.CommandType = commandType.StoredProcedure
        Dim CommandAdapter As SqlDataAdapter
    
        '---- PARAMETRE PASSE A LA PROCEDURE STOCKEE => AJOUT -----
        '---- ON PLACE DONC LES VALEURS CONTENUES DS LES TEXTBOX ----
        '---  DS LES VARIABLES POUR LA PROCEDURE STOCKEE      ----
        Mycommand.parameters.add("@insertnom", SqlDbType.nvarchar).value = Txtboxnom.text
        Mycommand.parameters.add("@insertprenom", SqlDbType.nvarchar).value = TxtBoxprenom.text
        Mycommand.parameters.add("@insertadresse", SqlDbType.nvarchar).value = TxtBoxad.text
        Mycommand.parameters.add("@insertville", SqlDbType.nvarchar).value = TxtBoxvi.text
        Mycommand.parameters.add("@inserttelephone", SqlDbType.nvarchar).value =TxtBoxtel.text
    
        '----GESTION ERREURS -----------
    
    
        Try
         ' ---ici on met le code à exécuter risquant d’engendrer l’erreur
    
          '----- EXECUTE LA COMMANDE -----
         'Exécute une instruction Transact-SQL sur la connexion et peut retourner
         ' le nombre de lignes affectées
    
          Mycommand.ExecuteNonQuery()
    
          '---- REDIRECTION -------
          Response.Redirect(RedirectionURL)
    
    
    
        Catch
          ' ---ici on place le code à exécuter si l’erreur se produit
          labelerreur.text = "Une erreur s'est produite"
    
    
        End Try
         ' ----- FERMETURE CONNECTION ------
          Myconnection.close()
    
    'FIN
    end if
    
    
    End Sub

Conclusion


Enjoy

Christophe

http://membres.lycos.fr/annmysql/
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de ravat le 28/07/2004 13:04:04

salut Jimmy
t'as fait un trés bon tavail ,y'a rien à dire.
J'ai une petite question pour toi: Si jamais je veux utiliser ton formulaire mais cette fois ci à l'inverse càd afficher le contenu du formulaire à partir de la base juste en remplissant le champ par exemple nom.
Est ce que t'as un code ou un petit help à me filer.
merci d'avance

signaler à un administrateur
Commentaire de jimmy69 le 28/07/2004 14:17:06

salut salut ravat,

Thanks...je debute et j'essaye de faire des codes simples ...

Pour ton stress tu dois utiliser un controlrepater
qui te permettra de lister ta table et ds ce controle tu mettra tes champs

  <asp:TextBox id="Txtboxnom" ...

J'ai mis un exemple sur ce site....

signaler à un administrateur
Commentaire de ravat le 28/07/2004 16:04:05

resalut jimmy
tu disais que t'as mis un exemple sur ce site ,tu pourrais pas stp me filer l'url .
merci

signaler à un administrateur
Commentaire de jimmy69 le 28/07/2004 17:42:26

re,

voici le lien
http://www.aspfr.com/code.aspx?ID=23496

ciao

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,234 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.