Vous êtes sur la page 1sur 57

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

CS VB, VB.NET ASP.NET,ASP C, C++ ColdFusion PHP Javascript Delphi Flash Java Graphisme Irc Assembleur C# Mobilit SQL Foxpro Python Regex Flex Windev

Ce site au dmarrage

Accueil

Codes

Tutoriels

Forum
dans
Tout le site site Tout le

Livres
Rechercher

Emploi

Services
testez_vb

Dconnexion
0 Message

Trouver un code source :

[ Dernires recherches ]

Accueil > Tutoriels > Base de Donnees > GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE


Annonces Google

M2M Web Database


for dezentralized sites, 56k,GSM wide range PLC support www.tixi.com

Dedicated Servers $49


4GB DDR3 RAM, 250GB. 7200RPM. 5 Day Money Back Guarantee. Order Now! servercraft.co

WW Historian on the Road


Your historian data on any device. KPIs, trends, alerts and more. transpara.com/wonderware-historian

Annonces Google

Gestion planning de bloc


Logiciel de gestion de Planning de Bloc Opratoire www.expertiz.fr

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Annonces Google

Migrer FileMaker 6 en 11
Eviter les nombreux piges cachs Profiter au maximum du changement editomac.fr/

Annonces Google

Migrer FileMaker 6 en 11
Eviter les nombreux piges cachs Profiter au maximum du changement editomac.fr/

Annonces Google

Migrer FileMaker 6 en 11
Eviter les nombreux piges cachs Profiter au maximum du changement editomac.fr/

Information sur le tutoriel


Dpos par Mayzz le 13/06/2010 15:06:46 Dans la catgorie Base de Donnees Vu : 36 739 fois

Aucune note

Note :

Ecrire un message priv l'auteur Commentaire sur cette source (137) Ajouter un commentaire et/ou une note

Formation professionnelle
Etudier en Espagne diplme europen Sant, Commerce et marketing.
www cesur-maroc net/

Description
Rpondant souvent aux questions sur le forum, je m’aperois que beaucoup de personnes utilisent Excel ou Access comme base de donnes locales. C’est pourquoi j’ai dcid de faire ce tutorial vous dmontrant comment utiliser une formule simple pour les applications de donnes locales qui n’est autre que Visual Basic.Net + SQL Serveur CE.

Tutorial
Bonjour tous,

Je vais donc vous proposer de raliser une application exemple, manipulant des donnes en locale, tapes par tapes, de la cration de la base jusquau dploiement. Cette application sera un simple formulaire de gestion des contacts.

Ce tutorial fait une cinquantaine de pages et sadresse aux novices et aux dveloppeurs ayant des bases en VB.Net. Vous en trouverez la source sur vbfrance ici.

Quallez-vous appendre en lisant ce tutorial ?

1. Crer une base de donnes SQL CE 2. Manipuler ADO.Net en Visual Basic 3. Tirer profit des nombreux outils et assistants de Visual Studio.

Annonces Google

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
4. Dployer un programme de donnes. Cette application vous montrera les grandes lignes de la gestion des donnes en ADO.Net avec une base de donnes SQL CE. 1\Introduction

Migrer FileMaker 6 en 11
Eviter les nombreux piges cachs Profiter au maximum du changement editomac.fr/

Jeunes diplms
Tout dabord, nous commencerons par crer un nouveau projet Winform laide de Visual Basic. Dposez votre CV en 3 minutes Et trouvez votre premier emploi ! www.Cadremploi.fr/jeune_emploi

Contrle de la classe
Enseigner/surveiller les PC lves. Contrle App & Net. val. gratuite www.netsupportschool.com

Annonces Google

Petites annonces au Maroc


Dposez votre annonce sur Bikhir.ma C'est gratuit, rapide et facile. Bikhir.ma

ISIMAN GRC
Logiciel multicanal de Gouvernance, Risques et Conformit www.keyword.fr

Figure1, Concepteur Winform

Medrio EDC: 75% Less Cost


Build your own study in days. See how easy Medrio makes EDC. www.Medrio.com

Hbergement Web Maroc


Espace d'hbergement Linux 2 Go d'espace 199 Dh/an simhebergement.com

Annonces Google

Petites annonces au Maroc


Dposez votre annonce sur Bikhir.ma C'est gratuit, rapide et facile. Bikhir.ma Figure2, Explorateur de solutions.

ISIMAN GRC
Logiciel multicanal de Gouvernance, Risques et Conformit www.keyword.fr

Comme vous pourrez le voir si vous en avez lhabitude, Visual Basic vous cre par dfaut un formulaire nomm Form1 (Fig. 1) et vous affiche celui-ci dans le concepteur (Fig. 2). Nous allons donc poursuivre en ajoutant une base de donnes locale notre projet. Pour se faire : Clic sur le menu Projet Clic sur Ajouter un nouvel lment

Medrio EDC: 75% Less Cost


Build your own study in days. See how easy Medrio makes EDC. www.Medrio.com

Vous devriez voir bote de dialogue vous permettant dajouter divers lments votre projet (Fig. 3). Choisissez Base de donnes locale puis dans le champ Nom saisissez MaBaseLocale .

Hbergement Web Maroc


Espace d'hbergement Linux 2 Go d'espace 199 Dh/an simhebergement.com

Annonces Google

Petites annonces au Maroc


Dposez votre annonce sur Bikhir.ma C'est gratuit, rapide et facile. Bikhir.ma

ISIMAN GRC
Logiciel multicanal de Gouvernance, Risques et Conformit www.keyword.fr

Medrio EDC: 75% Less Cost


Build your own study in days.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

See how easy Medrio makes EDC. www.Medrio.com

Hbergement Web Maroc


Espace d'hbergement Linux 2 Go d'espace 199 Dh/an simhebergement.com

Nos sponsors
Figure3, Ajout dun nouvel lment au projet.

Ceci fait, une bote de dialogue de configuration des bases de donnes vous proposera la cration dun DataSet fortement typ comme le montre la figure N4. Saisissez dans le champ nom du formulaire MonDataSet puis terminez lassistant.

Derniers Blogs
LA CONF'SHAREPOINT EN FRANCE !
par Patrick Guimonet

[ #SHAREPOINT 2010] SYNTHSE, LA GESTION [ #SHAREPOINT] RETOUR D'EXPRIENCE [ #SHAREPOINT 2010][ #SQLSERVER 2012] [ #SHAREPOINT 2010][ #SQLSERVER 2012]

La suite

RSS

Forum
RE : CHANGER LE NOM D'UN BOUTON MSGBOX CHANGER LE NOM D'UN BOUTON MSGBOX
par par par par

RE : INSTALLATION XP MODE ET VIRTUAL PC

RE : CHERCHER DU TEXTE DANS UNE VARIABLE

RE : AJOUTER COLORPICKER DANS DATAGRIDVIEW

La suite

RSS

Ct IT
Utiliser Office 365 pour un projet d?quipe Utiliser Office 365 pour un projet d?quipe SharePoint 2007 : Installation du Service SharePoint 2007 : Installation du Service Installation de SQL Server DENALI CTP3 Mise jour de Windows 2003 R2 vers
Figure4, Assistant de configuration des donnes.

Upgrade de SQL Server 2005 vers SQL Server

La suite

RSS

Offres d'emploi
Recherche Dveloppeur flash as3 web et Recherche Dveloppeur WEB freelance sur Recherche Programmeur moteur, niveau Recherche Dveloppeur PHP Recherche Dveloppeur Sharepoint Recherche Recherche dveloppeur web ASP et Recherche Analyste Programmeur Adlia

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
Figure5, Explorateur de solution, Base et DataSet.

Dposer une offre

La suite RSS

Vous devriez maintenant apercevoir dans votre explorateur de solution votre base de donnes (MaBaseLocale.sdf) et votre DataSet fortement typ (MonDataSet.xsd) figure 5. Nous allons pouvoir passer ltape suivante.

Formations Video
Adobe Touch Apps pour Android et iOS Flash CS6 : Les fondamentaux 3ds Max 2013 : Les fondamentaux Premiere Pro CS6 : Les fondamentaux Joomla! 2.5 : Les fondamentaux After Effects CS6 : Les fondamentaux Nik Software : Color Efex Pro 4

2\Cration du modle de donnes.

Pour poursuivre nous allons dfinir les tables et les champs qui composeront notre base de donnes, le but tant de vous initier et non de crer un programme complexe, notre base ne comportera quune table, qui servira pour le stockage des contacts.

En tant normale, nous serions obligs dditer notre base de donnes via un utilitaire spcifique (tel que Microsoft SQL Management Studio), mais fort heureusement Visual Basic, intgre un petit diteur de bases de donnes.

La suite

RSS

Appels d'offres
Pour continuer, double-cliquez sur le fichier MaBaseLocale.sdf dans lexplorateur de solution (fig. 5). Vous devriez voir apparaitre lexplorateur de bases de donnes (Explorateur de serveurs sous Visual Studio) sur la gauche de lEDI comme le montre la figure N6.

site internet Budget : 400 Synchronisation de calendriers et de contacts Budget : 800 Creation d-un jeu flash bonto Budget : 10 000
La suite RSS

Logiciels
sDEVIS-FACTURES vlPRO (8.3.1.5) 974 Application Server (12.3.3.2) DOODOO (V1.1) DocTranslate (V3.3.0.0) vPicture (1.5)

+ de logiciels tlcharger
Figure 6, Explorateur de bases de donnes.

Vidos drles
Halloween Party Terry Tate Office Linebacker Superbowl 2003 Jeu vido instructif C'est un vritable vol ! Banana Song Comment attraper la grippe A Parodie Pub Window 7

Faite un clic avec le bouton droit de votre souris sur le nud Table de lexplorateur de bases de donnes, puis choisir Crer la table dans le menu qui saffiche.

La suite

RSS

Sondage...
Sondage inexistant ou bien termin.
Sondage fourni par ProSondage.com

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
Figure 7, Editeur de table de Visual Studio.

Dans lditeur de tables ci-dessus, saisissez dans le champ Nom le nom de notre table qui sera Contacts . En dessous, dans les champs vides, crez une nouvelle colonne en saisissant ID pour le nom de colonne et changer le type de donnes pour uniqueidentifier (qui correspond au type GUID en Visual Basic). Par la suite changez la valeur pour Oui dans la colonne Cl primaire . En dessous, dans la valeur par dfaut de notre colonne noubliez pas de saisir la valeur newid() , si vous ne savez pas encore pourquoi, vous devez peut tre vous en douter, mais nous reviendrons la dessus plus tard.

Sondage inexistant ou bien termin.


Sondage fourni par ProSondage.com

Figure 8, Notre table au complet.

Statistiques
1 913 564 membres 36 nouveaux aujourd'hui 16 214 membres club

Ceci fait, il vous restera crer les autres champs en respectant le modle de la figure 8. Crez tous les champs, modifiez leur type de donnes, leur longueur et nautorisez pas les valeurs nulles pour les champs nom et prenom . Vous pouvez en suite fermer cet diteur en cliquant sur le bouton OK, vous devriez normalement avoir le schma de table dmontr dans la figure 9, aprs avoir tendue les nuds de la table contacts.

Comparez les prix

Archos Tablette PC ARNOVA ARNOVA 10 4GB Entre 200 et 210 Visiter le guide achat

CalendriCode
Juillet
L M M J V S

2012
D 1

2 9 16 23 30

3 10 17 24 31

4 11 18 25

5 12 19 26

6 13 20 27

7 14 21 28

8 15 22 29

Consulter la suite du CalendriCode

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 9, Schma de table.

Photothque

3\Les requtes SQL.

Le langage SQL tir de langlais Structured Query Language ou langage de requtes structurs, est un langage de programmation par entire tel que Visual Basic ou le C++ mais orient vers laccs aux donnes, qui permet dabord dmettre des requtes vers un serveur de donnes et de pouvoir en rcuprer le rsultat. Mais ce nest pas tout, il permet aussi de pouvoir stocker des procdures lintrieur de notre base pour lexcuter au moment voulu. Le langage SQL permet entre autre de travailler sur les bases de donnes du serveur, mais aussi sur le serveur lui-mme pour permettre sa configuration ou la gestion des comptes, ou le backup des bases par exemple.

Comment fonctionne laccs aux donnes :

Voici le schma classique (trs simplifi) de laccs aux donnes via ADO.net : Visiter la photothque

CS Tool Box

A dcouvrir

Cest le principe du schma client/serveur classique. Un serveur de donnes peu accueillir plusieurs client et traiter toutes leurs requte. Le serveur et les clients de donnes peuvent se trouver sur le mme ordinateur, ADO.net comporte plusieurs espaces de noms comprenant des Adapter capable de se connecter aux principaux serveurs de donnes.

Ce pendant, nous ne travaillerons pas vraiment avec ce type de serveur car pour notre application puisse quil va sagir dune base locale. Nous aurons alors un substitue de serveur, SQL Serveur Compact Edition qui permettra une sorte de simulation du serveur, bien moins puissant quun vrai serveur de donnes mais largement suffisant pour notre application locale.

Ou se situe la diffrence ?

Avec SQL CE, vous ne pouvez pas consulter une base se trouvant sur un ordinateur distant.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
SQL CE ninclus pas de gestion de lauthentification, nimporte qui peu donc avoir accs vos bases (depuis votre poste) si vous ne les crypts pas. Il faut spcifier lemplacement de la base sur le disque dans la chaine de connexion.

Mais alors quel est lavantage ?

Alors quune installation dun serveur de donnes ncessite parfois lachat dune licence, linstallation et le paramtrage complexe de son instance, SQL CE sinstalle comme un petit composant additionnel et prend trs peu de place sur le poste client. SQL Serveur CE est conu pour les applications mobiles, Smartphone et PDA.

Voila pour ces quelques prcisions, mais je vous propose de suite den revenir nos moutons et de dcouvrir les bases du langage SQL en quatre requtes : La La La La requte requte requte requte SELECT qui permet dobtenir les donnes de notre table, en lui prcisant ou non certains paramtres de recherche. INSERT qui va permettre lajout de nouveaux enregistrements dans notre base de donnes. UPDATE pour mettre jour les enregistrements de notre base. DELETE permettant de supprimer des enregistrements.

Figure 10, DataSet Fortement typ dans lexplorateur de solution de Visual Basic.

Bien entendu, pour envoyer ces requtes notre base, ou plutt au serveur local de donnes, nous devrons saisir du code. Mais Visual studio possde comme pour lditeur de tables, dautres assistants et diteurs qui nous permettent dautomatiser cette tache. Cest le cas du DataSet fortement typ, conu pour nous facilit la tche quand la communication avec notre serveur de donnes.

Comment cela fonctionne ?

Le DataSet fortement typ va nous permettre dassocier une ou plusieurs tables de notre base avec les quatre requtes de base du langage SQL via un objet appel le TableAdapter . En gros, il permet de crer une sorte de contrle utilisateur contenant quatre mthodes en VB qui permettront la rcupration, lajout, la suppression et la modification des donnes de notre base.

Pour comprendre, rien de mieux que la pratique, je vous invite donc double-cliquez sur le DataSet fortement Typ dans votre explorateur de solution (Fig. 10), pour ouvrir celui-ci dans le concepteur de vue de Visual Basic (Fig. 11).

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 11, DataSet Fortement typ dans le concepteur de vue.

Votre DataSet doit donc apparatre sous la forme dune fentre vide avec un fond laissant penser du papier kraft, et quelques crits en arrire plan. Effectu un clic avec le bouton droit de votre souris dans cet espace vide, puis dans le menu apparent, slectionnez Ajouter et TableAdapter .

Lassistant de configuration de TableAdaper apparaissant (Fig. 11), cliquez sur suivant en prenant le soin de vrifier que le nom de la chaine de connexion corresponde bien la base de donnes de notre projet.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 11, Assistant de configuration de TableAdapter.

Ltape suivant (Fig. 12) nous interroge sur la faon dont le TableAdapter devra accder notre Table. Une base SQL CE ne permettant pas dautre choix que le langage SQL via des requtes directes nous passerons donc cette tape en cliquant nouveau sur suivant.

Figure 12, Assistant de configuration de TableAdapter.

Cest partir dici que notre TableAdapter va prendre une tournure plus intressante. Lassistant nous demande de prciser quelles donnes devront tre charges dans la table, cest partir de ce code, qui devra tre une requte select, permettant la rcupration des donnes, que notre TableAdapter sera conu, ainsi quun modle de DataTable qui lui sera associ (voir Fig. 13).

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 13, Assistant de configuration de TableAdapter Instruction SQL.

Nous pouvons ce stade, saisir notre requte SELECT, en texte brut dans le champ prsent figure N 13. Mais encore une fois, Visual Studio possde plus dune corde son arc, et nous permettra une saisie facilit grce son Gnrateur de requtes SQL . Cliquez alors sur le bouton Gnrateur de requte, pour voir apparaitre celui-ci (Fig. 14).

Figure 14, Le gnrateur de requtes SQL de Visual Studio.

Une base pouvant possder plusieurs tables, et un TableAdapter pouvant renvoyer des lignes issues des donnes de plusieurs tables, nous serons donc invits prciser quelles tables feront partie de notre requte SELECT.

Notre projet ne possdant quune Table, nous ajouterons donc celle-ci, en la slectionnant puis en lajoutant en cliquant sur les boutons respectifs.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 15, Le gnrateur de requtes SQL de Visual Studio Table Contacts.

Notre table slectionne, elle nous apparait donc de faon visuelle (Fig. 15), nous naurons qu cocher des cases dans la liste des colonnes disponibles depuis notre table pour que lditeur cre la requte SQL notre place, nous vitant ainsi davoir la lourde tche de la saisir par nous mme. Pour notre projet, nous aurons besoin de rcuprer tous les champs de notre table, nous cocherons donc la case astrisque * , une sorte de joker prcisant que nous souhaitons rcuprer tous les champs. Fermez le gnrateur en cliquant sur OK.

Figure 16, Assistant de configuration de TableAdapter Instruction SQL.

Nous retrouvons donc notre assistant de configuration de TableAdapter, figure 16, dont la requte a t dfinie par notre

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
gnrateur de requte. Vous pouvez maintenant passer ltape suivante.

Figure 17, Assistant de configuration de TableAdapter.

Figure 17 > Lassistant vous demande quelles types de mthodes vous souhaiter gnrer :

Remplir un DataTable, Cette mthode nest rien dautre quune routine (Sub) qui remplira une DataTable des donnes retourns par les requtes SELECT.

Retourner un DataTable, mme chose que pour la prcdente, sauf que cette fois ci, il sagit dune fonction et non dune routine, qui retourne un DataTable remplis.

Les deux mthodes ci-dessous ont exactement le mme but, elles ne diffrent que dans stratgie que vous emploierez pour coder votre application. Je vous conseille donc de toujours laisser ces deux mthodes si vous ne maitrisez pas parfaitement le concept du TableAdapter.

La troisime option est comme qui dirait, magique car elle va nous viter davoir saisir les trois autres requtes.

En effet ce stade nous avons saisis la mthode SELECT, pour rcuprer nos donnes, mais nous navons pas prciss les requtes INSERT, UPDATE et DELETE, permettant de complter les oprations ncessaires au bon fonctionnement de notre programme. Lassistant va donc dduire ces requtes daprs les champs que nous avons slectionns ltape prcdente lors de la cration de notre requte SELECT.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 18, Assistant de configuration de TableAdapter- Rsultat.

Si tout cest bien droul et quil ny a pas derreur dans votre requte SELECT, vous devriez avoir le mme rsultat que prsent figure 18.

Comme je lai prcis plus haut, le TableAdapter est une reprsentation Graphique des requtes SQL qui permettent de travailler avec des donnes. Il est associ une DataTable. Figure19, vous devriez apercevoir dans le concepteur de vue de votre DataSet, le TableAdapter que nous venons de crer nomm ContactsTableAdapter par dfaut, ainsi que sa Table associ sous le nom de Contacts .

Figure 19, TableAdapter et DataTable en mode design.

Pour finir cette automatisation du travail avec les donnes, il nous reste modifier certains paramtres, ce nest pas obligatoire mais cela nous rendra le travaille plus agrable. Tout lheure nous avons pu voir que les requtes INSERT, UPDATE et DELETE de notre TableAdapter ont t gnrs dynamiquement par notre assistant. Ce pendant, celui-ci ne renomme parfois pas trs bien les paramtres passer nos requtes.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 20, Proprits du TableAdaper.

Cliquez sur lentte de notre TableAdaper (Surlign en jaune Fig. 20) et regardez dans lditeur de proprits de Visual Basic. Nous retrouvons nos quartes mthodes SQL. Pour commencer nous allons modifier la requte DELETE. Positionnez-vous sur ltiquette CommandText de la proprit DeleteCommand de notre TableAdapter et cliquez sur le bouton parcourir (Fig. 21).

Figure 21, Proprits du TableAdaper.

Figure 22, retour au gnrateur de requte. Voila lune des fameuses requtes gnres automatiquement par lassistant. Vous pouvez voir que les paramtres prcds dun @ sont nomms P suivis dun chiffre, ce qui ne facilite pas vraiment la comprhension sous lditeur de code de Visual basic.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 22, Gnrateur de requtes.

Pour la facilit, je renommerais donc tous les paramtres par leurs noms, une fois modifier la requte ressemble ceci :

Nous allons maintenant procder de la mme manire pour les deux requtes restantes :

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 23, Proprits du TableAdaper.

Figure 23, recommencez lopration pour la requte INSERT.

Figure 24, Gnrateur de requtes.

Remplacer les paramtres par leurs noms pour obtenir le code ci-dessous :

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Note : Vous aurez remarqu que jai intentionnellement supprim le paramtre ID, souvenez vous que lors de la construction de notre base, nous avons dfini la valeur par dfaut de cette colonne newid(), il nest donc pas ncessaire de prciser ce paramtre, le moteur de base de donnes SQL CE sen chargera pour nous.

Puis pour la requte DELETE :

Figure 25, Proprits du TableAdaper.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 26, Gnrateur de requtes.

En modifiant le code pour obtenir ceci :

Nous venons de terminer une tape importante, puis ce qu ce stade, notre programme est capable de :

Interroger la base de donnes. Ajouter des enregistrements dans la table Contacts de notre base. Supprimer des lignes de la table Contacts Modifier des enregistrements dans la table Contacts

Je vous rappelle que jusquici, mme si ce tutorial parait interminable (ah bon..? Pas pour vous ?!) , vous navez eu besoin de solliciter votre clavier quun nombre trs limit de fois.

4\Le code behind et linterface.

A ce stade nous naurions besoin que de saisir quelques lignes de code en VB pour rendre fonctionnelle notre Interface. Ce pendant, le but de ce tuto est aussi de dmontrer comment tirer profit de Visual basic et de ses assistants, afin de vous permettre dtre le plus productif possible.

Ce pendant, je tiens vous montrer comment manipuler les objets que nous avons prcdemment crs par code, afin que vous puissiez avoir un aperu de ce que nous allons faire via les assistants de Visual studio.

Voici comment, exploiter les quatre mthodes de notre TableAdapter par code behind.

Tout dabord, voici la procdure permettant de rcuprer les donnes de notre table contacts :

'Cration d'une instance de notre TableAdapter.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
Dim MonTableAdapter As New MonDataSetTableAdapters.ContactsTableAdapter

'Cration d'une instance de notre table associ. Dim MaDataTable As New MonDataSet.ContactsDataTable

'Appel de la mthode GetData de notre instance de TableAdapter pour le 'remplissage de la table. MaDataTable = MonTableAdapter.GetData

Nous obtenons donc un objet MaDataTable, qui contient des lignes et des champs, avec les donnes de notre table, nous pouvons exploiter les donnes contenues par cet objet pour les afficher dans notre interface.

Pour lajout de nouveaux enregistrements :

'Cration d'une instance de notre TableAdapter. Dim MonTableAdapter As New MonDataSetTableAdapters.ContactsTableAdapter

'Appel de la mthode Insert de notre TableAdapter en passant en paramtres 'toutes les donnes insrer. MonTableAdapter.Insert("DUPONT", _ "Jean", _ 25, _ "2 Rue du pr", _ "75000", _ "Paris", _ "France", _ "01 32 00 00 00", _ "", _ "", _ "dupontj@domaine.com", _ "")

Note : Tout lheure, nous avons modifis les requtes gnres automatiquement par Visual studio, dans la capture cidessous, vous pouvez voir que cela savre trs utile car dans linfo bulle qui daffiche lors de la saisie de notre procdure, ce sont bien les noms des champs que nous avons et non des champs nomms p1, p2, p3

Poursuivons avec la mthode Update, ici, nous repassons linstance notre TableAdapter pour quil mette jour notre table dans la base, nous supposons que celle-ci a t modifi entre temps. Mais la mthode Update gnre automatiquement prsente lavantage davoir plusieurs surcharges, ainsi nous pouvons lui passer en rfrence, linstance de notre table, mais galement un DataSet ou simplement une ligne de table. Elle permet galement de dfinir les champs manuellement tels que le fait la mthode Insert ci-dessus.

'Cration d'une instance de notre TableAdapter. Dim MonTableAdapter As New MonDataSetTableAdapters.ContactsTableAdapter

'Appel de la mthode Insert de notre TableAdapter en passant en paramtre toutes les donnes insrer. MonTableAdapter.Update(MaDataTable)

Pour finir regardons du cot de la mthode Delete, ici, le seule paramtre que nous devrons passer en rfrence est lID de la ligne supprimer.

'Cration d'une instance de notre TableAdapter.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
Dim MonTableAdapter As New MonDataSetTableAdapters.ContactsTableAdapter 'Appel de la mthode Insert de notre TableAdapter en passant en paramtre 'toutes les donnes insrer. MonTableAdapter.Delete(ID)

Voila le rsum en quelques lignes de code, de la manipulation dune table aprs avoir configur notre DataSet correctement.

Mais passons donc la construction de notre interface graphique.

Commencez par ajouter un composant BindingNavigator

Figure 27.

Renommez celui-ci : Navigator

Puis ajoutez un SplitContainer :

Figure 28.

Dans la partie gauche du SplitContainer, placez-y un DataGridView.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 29.

Renommez celui-ci DGV , puis ancrez le dans le conteneur parent. Dfinissez sa proprit MultiSelect sur False et sa proprit SelectionMode sur FullRowSelect .

Placez en suite dans la partie gauche du SplitContainer, un GroupBox

Figure 30.

Modifiez la proprit Text de celui-ci pour Proprits du contact . Puis dfinissez la proprit Anchor au quatre cots Top, Left, Right, Bottom.

Placez dans ce GroupBox, un contrle Panel

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 31.

Et dfinissez sa proprit Dock sur Fill, Sa proprit AutoScroll sur True ainsi que sa proprit AutoScrollMagin Sur (5 ; 5).

Pour le reste, ajoutez des contrles TextBox pour chaque champ de notre table contact, except pour le champ Age ou vous dessinerez un NumericUpDown et le champ ID ou vous ne mettrez rien. Pour chaque contrle TextBox vous modifierez les proprits suivantes :

MaxLength : mettez la valeur de la longueur du champ correspondant (ex : 255 pour nom), pour le NumericUpDown mettez sur 150 la proprit Max. Mutliligne : Mettez sur True pour commentaire et Adresse. Nom, renommez les contrles avec le prfix txt_ suivis du nom du champ et nud_ pour le NumericUpDown (ex : txt_Nom ).

Crez des tiquettes avec des labels et vous devriez avoir un design ressemblant ceci :

Figure 32.

Placez galement sur votre formulaire un ErrorProvider que vous nommerez EP

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
Notre interface prte nous allons commencer la faire interagir avec notre DataSet.

Nous allons nous occuper dans un premier temps du DataGridView. Cliquez sur le DataGridView pour ouvrir son smart Tag (petite flche en haut droite). Puis droul la liste de choix de source de donnes, dveloppez les sources de donnes du projet jusqu arriver notre table Contacts . Slectionnez celle-ci.

Figure 33.

Ceci fait, le DataGridView gnre automatiquement des colonnes, vous pouvez aussi voir que des contrles sont apparus en bas de votre formulaire (A cot du BindingNavigator et de lErrorProvider) ce sont les instances de nos composant crs laide de notre DataSet fortement typ.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
Figure 34.

Dcochez les cases du smart tag permettant lajout, la modification et la suppression de donnes, et activez celle permettant la rorganisation des colonnes si vous le souhaitez. Cliquez en suite sur le lien Modifier les colonnes , nous allons supprimer certaines colonnes dont laffichage ne servira pas vraiment.

Supprimez toutes les colonnes sauf : ID Nom Prenom Ville Dfinissez la proprit Visible de la colonne ID sur False , nous ne supprimerons pas cette colonne car nous aurons besoin de cette information, ce pendant il est inutile dafficher celle-ci lcran, car elle doit tre transparente pour lutilisateur. Vous devriez donc avoir le schma de colonne suivant :

Figure 35.

Que venons-nous de faire ?

Je vous ai dmontr plus haut, que lappel des mthodes de notre TableAdapter se fait en quelques lignes de code, celle-ci doivent dabord passer par ltape de linstanciation de notre TableAdapter, souvenez-vous :

'Cration d'une instance de notre TableAdapter. Dim MonTableAdapter As New MonDataSetTableAdapters.ContactsTableAdapter

En prcisant la source de donnes notre DataGridView, celui-ci gnr un composant sur le formulaire, qui nest autre quune instance de notre TableAdapter ContactsTableAdapter , cette instance porte le mme nom :

Figure 36.

Elle correspond en fait, la ligne de code que nous aurions du saisir :

Dim ContactsTableAdapter As New MonDataSetTableAdapters.ContactsTableAdapter

Il en va de mme pour linstance de notre Table,

'Cration d'une instance de notre table associ.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
Dim MaDataTable As New MonDataSet.ContactsDataTable

Celle-ci apparait aussi en tant que contrle figure 36. Cette instance de notre table est donc relie la proprit DataSource de notre contrle DataGridView. Chaque fois que cette DataTable sera modifi, le contenu de note DataGridView le sera galement. Et si nous regardons de plus prs ce qui se passe dans le code behind de notre formulaire, nous pouvons voir ceci :

Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load 'TODO : cette ligne de code charge les donnes dans la table 'MonDataSet.Contacts'. Vous pouvez la dplacer ou la supprimer selon vos besoins. Me.ContactsTableAdapter.Fill(Me.MonDataSet.Contacts) End Sub End Class

LEDI a cr une ligne de code permettant le remplissage de notre table au moment du chargement de notre formulaire. Que va-t-il donc se passer ?

Lors du chargement, ContactsTableAdapter va excuter notre requte SELECT et remplir notre instance de DataTable Contacts, celle-ci tant reli au DataGridView, lui signalera que son contenu vient de changer et il se mettra jour automatiquement. Pour rsumer, nous aurons donc laffichage de tous les contacts de notre table au chargement de lapplication.

Bien entendu, ce que nous venons de faire par assistant, nous pouvons aussi le faire par code, nous aurions du alors saisir nous mme dans notre formulaire :

Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load 'Cration d'une instance de notre TableAdapter. Dim MonTableAdapter As New MonDataSetTableAdapters.ContactsTableAdapter 'Cration d'une instance de notre table associ. Dim MaDataTable As New MonDataSet.ContactsDataTable 'Appel de la mthode GetData de notre instance de TableAdapter pour le 'remplissage de la table. MaDataTable = MonTableAdapter.GetData 'Association de la DataTable et du DataGridView DGV.DataSource = MaDataTable End Sub End Class

Jespre quarriver ici, vous avez russi saisir le concept, jessaye dtre le plus claire possible, bien que ce ne soit pas vident.

Reprenons notre figure 36, en la regardant attentivement, on peut y voir un autre contrle, de type BindingSource, ce contrle est nomm ContactBindingSource . Il a galement t gnr au passage, mais quoi sert-il ?

Un BindingSource est un contrle servant dintermdiaire entre une source de donnes (Tel quune DataTable) et un ou plusieurs contrles de donnes. Il permet synchroniser la navigation entre les contrles au sein de cette source de donnes mais plus encore, il permet dappliquer un filtre pour la recherche dans une table sans avoir renvoyer une requte au serveur, ce qui permet un filtrage rapide.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

En rsum, lors ce que lon dfinir une liaison au donnes dun composant de donnes en Visual basic :

Une instance de TableAdapter es t cre en tant que contrle visuel. Une instance de DataTable es t cre en tant que contrle visuel. Une instance de BindingSource est cre en tant que contrle visuel. Le TableAdapter rempli le DataTable au dmarrage. Le BindingSource a pour source de donnes ce DataTable. Et enfin le contrle a pour source de donnes le BindingSource.

Si des instances de BindingSource, TableAdapter, et DataTable sont dj crs, vous pourrez directement choisir ceux-ci.

La gestion de notre DataGridView tant termine, nous passerons maintenant la gestion de nos contrles de droites, les champs prsents dans le Panel. De mme que pour notre DataGridView, nous allons lier ces champs notre source de donnes.

Je vous invite donc cliquer sur le premier lment de ce panel qui nest autre que le TextBox txt_Nom .

Figure 37.

Dvelopper la proprit DataBindings du contrle, positionnez-vous sur (Avances) puis cliquez sur le bouton parcourir

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 38 Liaison de contrles aux donnes.

Dans le champ Liaison , recherchez le champ Nom de notre ContactBindingSource et slectionnez celui-ci, positionnez le champ Mode de mise jour de la source de donnes sur Never . En effet, nous mettrons la source de donnes jour par code, lors ce que nous cliquerons sur un bouton pour enregistrer le contact et non lors du changement dans un champ.

Figure 39 Liaison de contrles aux donnes.

Vous devez recommencer lopration pour tous les contrles prsents dans notre Panel, en prenant soin de slectionner le champ correspondant.

Que venons-nous de faire ?

Nous avons pu voir que le contrle BindingSource est en fait une source de donnes tenant lui-mme sa source dune autre source de donnes. Il est un intermdiaire. En liant nos contrles ce BindingSource, les champs se rempliront

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
automatiquement, chaque fois que la ligne slectionne dans le DataGridView changera.

Nous allons passer la dernire tape. Cette tape permettra de finaliser notre programme, de le rendre fonctionnel. Pour commencer nous allons dfinir la proprit BindingSource de notre contrle ContactBindingSource ce qui rendra fonctionnel la navigation dans notre source de donnes. Navigator sur

Figure 40 Proprits de Navigator .

Puis nous allons finaliser notre interface en supprimer les deux boutons par dfaut crs par notre BindingNavigator, pour les remplacer par 3 nouveaux dont les noms seront respectivement btn_Save , btn_Del et btn_New , vous pouvez dfinir la proprit DisplayStyle sur ImageAndText et saisir les tiquettes des bouton puis leur ajouter des icnes comme je lai fais figure 42.

Figure 41 Suppression des boutons par dfaut du BindingNavigator.

Figure 42 Ajout de nouveaux boutons.

Dfinissez la proprit Enabled des contrles btn_Save et btn_Del sur False (Fig. 42). Ajoutez un sparateur, un TextBox et ComboBox, nomms txt_SearchArgs et cbo_Filter et deux labels servant dtiquettes afin de dfinir un champ de recherche voir figure 43 ci-dessous.

Figure 43 Champ de recherche.

Dfinissez la proprit DropDownStyle du ComboBox sur DropDownList , et remplissez sa proprit Items par les lments suivants :

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 44 lments du ComboBox.

Vous laurez compris, il sagit des champs de notre table, pour lesquels nous allons appliquer un filtre de recherche.

Le reste de notre application, se droulera dans la partie code behind de notre formulaire. Ouvrez le code behind de celui-ci, vous devriez avoir le code ci-dessous.

Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load 'TODO : cette ligne de code charge les donnes dans la table 'MonDataSet.Contacts'. Vous pouvez la dplacer ou la supprimer selon vos besoins. Me.ContactsTableAdapter.Fill(Me.MonDataSet.Contacts) End Sub End Class Nous allons quelque peu modifier le code gnr par lEDI afin de pouvoir faciliter lappel de celui-ci dans dautres procdures que celle du chargement de notre formulaire.

'Procdure "Load" de notre formulaire qui se dclanche au chargement de celui-ci. Private Sub Form1_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load ' cbo_Filter.SelectedIndex = 0 Call RefreshDataSource() ' End Sub ' 'Procdure prive permettant le remplissage de notre source de donnes 'avec les lments contenus dans notre base. Private Sub RefreshDataSource() ' 'Remplissage de l'instance de notre DataTable "Contacts" par l'instance 'de Notre TableAdapter "ContactTableAdapter". 'Celui-ci excute la requte SELECT pour remplir notre table des donnes 'que contient notre base physique "MaBaseLoacle.sdf". Me.ContactsTableAdapter.Fill(Me.MonDataSet.Contacts) ' End Sub

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Pour viter les erreurs potentielles, nous allons mettre jour ltat de nos boutons du Navigator , lors de la mise jour de notre DataGridView.

'Procdure "DataBindingComplete" qui se dclanche une fois le DataGridView mis jour. Private Sub DGV_DataBindingComplete(ByVal sender As Object, _ ByVal e As System.Windows.Forms.DataGridViewBindingCompleteEventArgs) _ Handles DGV.DataBindingComplete ' 'Mise jour de l'tat des contrles pour viter les erreurs d'enregistrement 'et de suppression si le DataGridView ne contient aucune ligne. btn_Del.Enabled = (DGV.RowCount <> 0) btn_Save.Enabled = (DGV.RowCount <> 0) ' End Sub

Puis interviendra le code de nos boutons, permettant dajouter, de modifier ou de supprimer des contacts dans notre table tout en prenant soin de prvenir des erreurs ventuelles.

'Procdure "Click" de notre bouton de sauvegarde des contacts. Private Sub btn_Save_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles btn_Save.Click ' 'Gestion des erreurs de saisie ' Dim HasError As Boolean = False EP.Clear() ' If txt_Nom.Text.Length = 0 Then EP.SetError(txt_Nom, "Le champ ""Nom"" ne peut tre vide !") HasError = True End If ' If txt_Prenom.Text.Length = 0 Then EP.SetError(txt_Prenom, "Le champ ""Prnom"" ne peut tre vide !") HasError = True End If ' If HasError Then Exit Sub End If ' REM: nous pourrions aller plus loin dans cette gestion des erreur REM: avec l'ajout d'expressions rgilres (RegEx) REM: pour contrler les champs tel que l'email ou le code postal, REM: mais ce n'est pas le but de ce tutoriel. ' 'Rcupration de la valeur de la colonne 0 de la premire ligne 'slectionn dans notre DGV. Dim ID As Guid = CType(DGV.SelectedRows(0).Cells(0).Value, Guid) ' Try ' 'Appel de la procdure Update de notre TableAdapter qui tranmettra

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
'la requte SQL UPDATE. Dim NbLine As Integer = ContactsTableAdapter.Update(txt_Nom.Text, _ txt_Prenom.Text, _ CShort(nud_Age.Value), _ txt_Adresse.Text, _ txt_CP.Text, _ txt_Ville.Text, _ txt_Pays.Text, _ txt_Tel.Text, _ txt_Mobile.Text, _ txt_Fax.Text, _ txt_Email.Text, _ txt_Commentaire.Text, _ ID) REM: Cette procdure retourne un entier indiquant le nombre de lignes modifis. ' If NbLine > 0 Then ' MessageBox.Show("Le contact a bien t mis" & _ " jour dans la base de donnes.", _ "Mise jour du contact", _ MessageBoxButtons.OK, _ MessageBoxIcon.Information) 'La modification effectue nous actualisons les donnes de notre source 'de donnes en effectuant une requte 'SELECT de nouveau. Call RefreshDataSource() End If ' Catch ex As Exception ' MessageBox.Show("Une erreur est survenue durant l'accs" & _ " la base de donnes." & Environment.NewLine & _ "Dtails de l'erreur: " & ex.Message, _ "Echec de l'accs aux donnes.", _ MessageBoxButtons.OK, _ MessageBoxIcon.Exclamation) ' End Try ' End Sub

'Procdure "Click" de notre bouton de suppression des contacts. Private Sub btn_Del_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles btn_Del.Click ' 'Validation de la demande de suppression Dim result As DialogResult = MessageBox.Show("Voulez-vous vraiment supprimer ce" & _ " contact ?", _ "Suppression dfinitive ?", _ MessageBoxButtons.YesNo, _ MessageBoxIcon.Question) ' 'Si la rponse est autre que Oui, alors on quitte la procdure

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
If result <> Windows.Forms.DialogResult.Yes Then Exit Sub End If ' 'Rcupration de la valeur de la colonne 0 de la premire ligne 'slectionn dans notre DGV. Dim ID As Guid = CType(DGV.SelectedRows(0).Cells(0).Value, Guid) REM: Cette procdure retourne un entier indiquant le nombre de lignes modifis. ' Try ' 'Appel de la procdure DELETE, de notre TableAdapter qui transmettra la 'requte SQL DELETE. Dim NbLine As Integer = ContactsTableAdapter.Delete(ID) REM: Cette procdure retourne un entier indiquant le nombre de lignes modifis. ' If NbLine > 0 Then ' MessageBox.Show("Le contact a bien t supprim de la base de donnes.", _ "Suppression du contact", _ MessageBoxButtons.OK, _ MessageBoxIcon.Information) 'La suppression effectue nous actualisons les donnes de notre source 'de donnes en effectuant une requte SELECT de nouveau. Call RefreshDataSource() End If ' Catch ex As Exception ' MessageBox.Show("Une erreur est survenue durant l'accs la base de donnes." & _ Environment.NewLine & _ "Dtails de l'erreur: " & ex.Message, _ "Echec de l'accs aux donnes.", _ MessageBoxButtons.OK, _ MessageBoxIcon.Exclamation) ' End Try ' End Sub

'Procdure "Click" de notre bouon d'ajout de contacts. Private Sub btn_New_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles btn_New.Click ' 'Gestion des erreurs de saisie ' Dim HasError As Boolean = False EP.Clear() ' If txt_Nom.Text.Length = 0 Then EP.SetError(txt_Nom, "Le champ ""Nom"" ne peut tre vide !") HasError = True End If

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
' If txt_Prenom.Text.Length = 0 Then EP.SetError(txt_Prenom, "Le champ ""Prnom"" ne peut tre vide !") HasError = True End If ' If HasError Then Exit Sub End If ' REM: nous pourrions aller plus loin dans cette gestion des erreur avec REM: l'ajout d'expressions rgilres (RegEx) REM: pour contrler les champs tel que l'email ou le code postal, REM: mais ce n'est pas le but de ce tutoriel. ' Try ' 'Appel de la procdure Insert de notre TableAdapter, 'qui transmettra la requte SQL INSERT. Dim NbLine As Integer = ContactsTableAdapter.Insert(txt_Nom.Text, _ txt_Prenom.Text, _ CShort(nud_Age.Value), _ txt_Adresse.Text, _ txt_CP.Text, _ txt_Ville.Text, _ txt_Pays.Text, _ txt_Tel.Text, _ txt_Mobile.Text, _ txt_Fax.Text, _ txt_Email.Text, _ txt_Commentaire.Text) REM: Cette procdure retourne un entier indiquant le nombre de lignes modifis. ' If NbLine > 0 Then ' MessageBox.Show("Le contact a bien t ajout la base de donnes.", _ "Ajout du contact", _ MessageBoxButtons.OK, _ MessageBoxIcon.Information) ' 'L'ajout effectu nous actualisons les donnes de notre source 'de donnes en effectuant une requte SELECT de nouveau. Call RefreshDataSource() ' End If ' Catch ex As Exception ' MessageBox.Show("Une erreur est survenue durant l'accs la base de donnes." & _ Environment.NewLine & _ "Dtails de l'erreur: " & ex.Message, _ "Echec de l'accs aux donnes.", _ MessageBoxButtons.OK, _ MessageBoxIcon.Exclamation) '

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
End Try End Sub

Jusquici, notre programme est entirement fonctionnel quant laccs aux donnes, ce quil nous reste faire cest de saisir le code qui permettra au moteur de recherche de fonctionner. Ce code doit agir lors ce que lon saisit du texte dans notre champ de recherche, ou lors ce que lon dtermine quel champ va-t-tre la cible de notre recherche. 'Procdure prive, se dclanchant lors des vnements "TextChanged" de notre contrle '"txt_SearchArgs" et "SelectedIndexChanged" de notre contrle "cbo_Filter" Private Sub Filter_Change() Handles txt_SearchArgs.TextChanged, _ cbo_Filter.SelectedIndexChanged ' 'Nous allons changer la proprit "Filter" de notre BindingSource Dim FilterArgs As String = cbo_Filter.Text & " LIKE '" & txt_SearchArgs.Text & "%'" ' REM: la proprit "Filter" du BindingSource fonctionne comme REM: une clause "WHERE" en SQL. Nous utilisons la clause "LIKE" REM : et le joker "%" pour prciser que le champ commence par le texte REM: saisi dans le TextBox "txt_SearchArgs. ' 'Application du filtre ContactsBindingSource.Filter = FilterArgs ' End Sub

Et voila, notre programme est entirement fonctionnel et prt tre distribuer.

5\Dploiement de notre projet.

Nous allons voir dans ce chapitre (eh oui, je parle maintenant de chapitre car je ne pensais pas avoir autant de pages crire pour un si petit projet) comment dployer notre application afin de pouvoir linstaller sur une plateforme autre que celle dont nous nous servons pour le dveloppement.

Je vais donc vous inviter ouvrir les proprits de notre projet en double cliquant sur licne MyProject dans lexplorateur de solutions de Visual Basic.

Figure 45 Explorateur de solutions.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 46 Proprits du projet, onglet Publier .

Allez longlet Publier comme le montre la figure 46, puis cliquez sur le bouton Composants requis

Figure 47 Composants redistribuables.

Vrifiez que le composant redistribuable SQL Server Compact 3.5 soit coch puis fermez cette fentre et les proprits de votre projet. Toujours dans lexplorateur de solution, faites un clic avec le bouton droit de votre souris sur licne de votre projet (ici MyLocalDataApp) et slectionnez Publier dans le menu qui saffiche.

Suivez les tapes des figures suivantes, en laissant par dfaut tous les paramtres.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 48 Emplacement de la publication.

Figure 49 Mode de publication.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Figure 50 Options de mise jour.

Figure 51 Rcapitulatif avant publication.

6\Conclusion.

Vous savez maintenant avec quelle facilit il est possible de raliser des applications de donnes en .Net via Visual Studio, ce tutorial est assez long car jai tenu rentrer dans les dtails au maximum, mais pour quelquun qui maitrise les outils de Visual Studio, il ne faudra pas plus dune dizaine de minutes pour venir bout dune application comme celle-ci.

Nous avons travaills avec des donnes en locale, mais les outils dont je vous ai fait la dmonstration fonctionnent aussi pour la gestion des donnes en gnrale, il est donc possible demployer ces mthode pour un logiciel de base de donnes traitant avec un autre SGBD, quil soit locale ou distant (Base Access, Excel, SQL Serveur, MySQL, Oracle...).

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Voila, ce tutorial touche sa fin, en esprant que jaurais t assez claire pour permettre den apprendre plus sur la gestion des donnes en Visual Basic.

Mayzz.

Historique
13 juin 2010 20:40:46 : - Correction d'ortaugrafe ;O) - Mise jour d'lments (Graphiques) non pris en charges (Captures). 13 juin 2010 21:47:56 : Mise jour des schmas 13 dcembre 2010 16:31:12 : Brve correction 13 dcembre 2010 16:33:34 : idem 13 dcembre 2010 16:38:02 : Re-upload suite plantage

Commentaires
COMMENTAIRE
DE

ADN56

LE

14/06/2010 07:39:48

Alors l respect ! Je ne pensais pas que tu aurais eu le courage de le mettre par cris ! Bravo pour le taff, et merci bien l'ami.

COMMENTAIRE

DE

MAYZZ

LE

14/06/2010 13:54:03

Ben je dois avouer que l'autre jour ca m'a motiv pour mettre tout ca par crit ;O)

COMMENTAIRE

DE

MAYZZ

LE

14/06/2010 13:56:09

Par contre j'ai un petit souci au niveau du rendu du code, j'aurais pu faire des capture, mais celui qui voudrais copier/coller le code serait obliger de tlcharger la source... pas top Faut que je trouve une soluce.

COMMENTAIRE

DE

ADN56

LE

14/06/2010 17:45:50

Je trouve le rendu du code pas mal du tout, quesque tu lui reproche ?

COMMENTAIRE

DE

MAYZZ

LE

14/06/2010 20:17:53

bah c'est pas comme sur le docx originale, interligne trop espac et le retrait n'est pas maintenu donc question lisibilit du code c'est franchement pas terrible.

COMMENTAIRE

DE KEVINGOUBE01 LE

15/06/2010 16:19:03

ADN56 ton code est vraiment intressant, cela apporte beaucoup de facilit pour interagir avec une base de donnes. Nanmoins j'ai une question, qu'est-ce que le "EP" dans le code du btn_save.click exemple : EP.SetError(txt_Nom, "Le champ ""Nom"" ne peut tre vide !") Peut-tu m'expliquer cela et me dire s'il faut que je dclare EP et si oui o je doit le dclarer ?? Je te Remercie d'avance ! COMMENTAIRE
DE

MAYZZ

LE

15/06/2010 16:34:24

Tout est expliqu dans le tuto, il suffit de lire... "Placez galement sur votre formulaire un ErrorProvider que vous nommerez EP " C'est un composant Winform qu'il faut ajouter au formulaire (cf: la source). COMMENTAIRE
DE

MAYZZ

LE

16/06/2010 00:37:05

Merci vous deux pour les compliments, ca fait toujours plaisir de voir qu'aprs 2h30 pass faire un tuto, il y a des gens qui le lisent et en tirent profit.

COMMENTAIRE

DE KEVINGOUBE01 LE

17/06/2010 14:31:28

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
Salut, J'ai une erreur sur une ligne du code que j'ai chop dans ce tuto et je n'arrive pas rsoudre cette erreur, je vous est mit l'erreur en dessous du code. Code : Private Sub Filter_Change() Handles txt_SearchArgs.TextChanged 'Nous allons changer la proprit "Filter" de notre BindingSource Dim FilterArgs As String = cbo_filter.Text & " LIKE '" & txt_SearchArgs.Text & "%'" REM: la proprit "Filter" du BindingSource fonctionne comme REM: une clause "WHERE" en SQL. Nous utilisons la clause "LIKE" REM : et le joker "%" pour prciser que le champ commence par le texte REM: saisi dans le TextBox "txt_SearchArgs. 'Application du filtre CandidatBindingSource.Filter = FilterArgs 'erreur sur cette ligne vous trouverez l'erreur plus bas

End Sub Erreur : La rfrence d'objet n'est pas dfinie une instance d'un objet. Je vous remercie d'avance !! COMMENTAIRE
DE

MAYZZ

LE

17/06/2010 15:09:53

Salut, As-tu suivi le tuto au complet ? "La rfrence d'objet n'est pas dfinie une instance d'un objet." C'est un erreur VB6 Ca ? En .Net on parle de NullReferenceExecption. COMMENTAIRE
DE KEVINGOUBE01 LE

17/06/2010 15:15:58

J'ai une autre question pour toi je suis dsol de te dranger mais je voulez savoir s'il y avez un autres moyens pour faire une requete que : "Me.CandidatTableAdapter.Fill(Me.MyDataSet.Candidat)" Juste pour savoir car cela m'arrangerai beaucoup et vu que je connais pas trop ce systme je m'en rfr toi qui l'air assez cal sur ce sujet. Merci d'avance et encore dsol pour toutes ces questions. COMMENTAIRE
DE KEVINGOUBE01 LE

17/06/2010 15:18:24

Non ce n'est pas du VB6 je dveloppe mon appli sous visual studio 2010 et c'est bien du vb.net

COMMENTAIRE

DE

MAYZZ

LE

17/06/2010 15:28:31

Quote : J'ai une autre question pour toi je suis dsol de te dranger mais je voulez savoir s'il y avez un autres moyens pour faire une requete que : "Me.CandidatTableAdapter.Fill(Me.MyDataSet.Candidat)" Tu ne me drange pas mais si j'ai fais un tuto avec une source c'est justement pour que les gens puissent apprendre par eux-mme, sans l'aide de personne, si tu lis ce tuto corectement, tu en comprendra le fonctionnement et tu pourras rpondre toi mme tes questions. Pour ce qui est de ta question je ne la comprend pas ? Que reproche-tu as la mthode Fill ? Tu veux dire que tu souhaiterais faire une requte SQL Perso ? Bien oui c'est possible, dans la section ou j'explique comment remplir la requte SELECT via l'assistant, tu n'as alors qu' saisir ta propre requte SQL et ta mthode fill agira en fonction (et te demandera les ventuels paramtres). COMMENTAIRE
DE KEVINGOUBE01 LE

17/06/2010 15:53:13

ouais j'en ai cre quelques unes mais lorsque je veux assign des valeurs prise de mon interface grce des variables les requetes marche une fois sur deux ^^ je vais retent je te tiens au courant merci.

COMMENTAIRE

DE

MAYZZ

LE

17/06/2010 15:59:18

Ce n'est pas vraiment le bon endroit pour demander de l'aide, au pire des cas ouvre un thread sur le forum, expose clairement ton problme et poste ta requte et ton code. Tu peux en suite me filer le lien en MP je verrais si je peux faire quelque chose.

COMMENTAIRE

DE NIBLON LE

18/06/2010 12:00:37

Bonjour a tous. Tres bon tuto suivi 9/10 :) (a cause d'une phrase: placer a gauche un container ? pas plustot a droite lol )je l'ai suivi a la lettre et me voila avec ma premiere application avec base de donnee local fonctionnel :) j'ai repris le tuto pour commencer mon application sur les Cactus . Encore merci pour ce tuto , tres bien fais.

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
Niblon COMMENTAIRE
DE

MAYZZ

LE

18/06/2010 13:25:21

'Placez en suite dans la partie gauche du SplitContainer, un GroupBox' En effet merci de me l'avoir fait remarqu, ca peut tre perturbant pour un dbutant. Je ferais bientt une mise jour de ce tuto, je dois m'occuper de l'autre pour le moment, car ADN s'est gentiment propos de me faire la correction d'orthographe, ce qui n'est pas du luxe pour moi ;) COMMENTAIRE
DE NIBLON LE

18/06/2010 15:30:49

Pour un debutant quand moi oui :) j'ai bien reflechi 5 min quand meme Mdr :)

COMMENTAIRE

DE

SHAEGAL

LE

28/06/2010 15:17:22

Bonjour, Bravo pour ce tuto qui m'a, il faut bien le dire, enfin fait comprendre la philosophie des BDD. Avec un peu d'entranement, je devrais pouvoir peut-tre me lancer dans des BDD plus complexes. Vivement la suite... COMMENTAIRE
DE LAKUM LE

05/07/2010 18:22:56

bonjour, je voudrai savoir aprs le logiciel de gestion des donnes, comment tu pour l'installer. merci pour ton tutos tu a t trs clair

COMMENTAIRE

DE

MAYZZ

LE

05/07/2010 18:57:23

L'application d'installation se trouve dans le dossier BIN\Release du projet setup. Voila @+

COMMENTAIRE

DE LAKUM LE

07/07/2010 20:40:40

je te remercie de m'avoir rpondu mais j'ai pas release du projet setup dans mon dossier bin et il n'y est pas non plus dans ton zip que j'ai tlcharg.je suis embt car je veux utiliser mon projet pour mon stage dans le but de cr une gestion des stocks et il me reste plus que 3 semaine alors si tu peux me donner encore un peu de ton savoir faire je t'en serai reconnaissant. COMMENTAIRE MAYZZ 07/07/2010 21:06:21

DE

LE

En effet, il n'y a pas de projet setup c'est un dploiement clickonce, dsol de t'avoir induit en erreur (l'habitude de travailler sous VS pro). Le projet setup se trouve dans le rpertoire publish du projet. Voila des infos sur clickonce ici => http://morpheus.developpez.com/clickonce/ COMMENTAIRE 08/07/2010 19:46:58

DE LAKUM LE

c'est bon j'ai trouv le dploiement dans ton zip mais je ne l'ai pas dans mon projet, en fait quand j'ai fini ma gestion des donnes la dernire fois j'avais 7 erreurs donc c'est peut tre pour a que j'ai pas tous le dploiement comme toi et je n'arrive pas les rsoudre. en tous cas merci toi de me rpondre, j'avance petit petit. COMMENTAIRE AMAROK02 15/07/2010 10:21:41

DE

LE

Merci. COMMENTAIRE

Merci pour ce tuto trs complet et trs pdagogique. Nanmoins j'aurais une question complmentaire pour aller un petit peu plus loin dans la gestion des BDD. Comment faire pour ne pas craser la BDD installe sur un poste utilisateur en cas de mise jour et notamment pour prendre en compte les modifications ventuelles de structure de BDD ? En effet j'ai pu sans problme par exemple supprimer l'age pour le remplacer par la date de naissance mais lorsque j'ai dploy mon appli la base que j'avais saisie sur avec l'application dploye a t vide.
DE

MAYZZ

LE

15/07/2010 15:21:28

C'est tout fait normal et logique. Les projets setup sont l pour l'installation de fichiers, ils copient, un point c'est tout. Ils ne se soucient pas du type de fichier. Dans ton ca, il te faut dvelopper un projet qui sera charg de la mise jour de l'application. Tu rcupres les anciens enregistrements de ta table, puis tu lances le setup de ton projet (ou encore un simple programme faisant la copie exe + nouvelle base) et en fin tu insres les enregistrements dans la nouvelle table. Il n'existe aucune mthode automatis sous VS. COMMENTAIRE
DE

AMAROK02

LE

16/07/2010 09:08:40

Bonjour, Merci pour ta rponse, mme si je ne vois pas pour l'instant comment m'y prendre concrtement a me donne une piste de rflexion.

COMMENTAIRE

DE

ADN56

LE

16/07/2010 12:47:11

et bien en gros, tu charges dans ton nouveau soft la vieille BDD et tu la rcris dans le nouveau format ;)

COMMENTAIRE

DE SABYR LE

08/08/2010 04:06:02

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
merci pour ce tuto

COMMENTAIRE

DE SABYR LE

09/08/2010 17:19:12

juste concernant le code je sais pas l'tape o je vais le taper

COMMENTAIRE

DE SABYR LE

09/08/2010 17:21:49

merci d'avance

COMMENTAIRE

DE

MAYZZ

LE

09/08/2010 17:32:58

End Sub '<=== ICI VIENT LE RESTE DU CODE End Class

Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load 'TODO : cette ligne de code charge les donnes dans la table 'MonDataSet.Contacts'. Vous pouvez la dplacer ou la supprimer selon vos besoins. Me.ContactsTableAdapter.Fill(Me.MonDataSet.Contacts)

Le code est saisir dans le formulaire 'Form1' entre le dbut et la fin de classe. COMMENTAIRE
DE

ADN56

LE

09/08/2010 17:33:26

argggg a va pas recommencer ! qu'est ce que tu veux dire sabyr ? ->juste concernant le code je sais pas l'tape o je vais le taper <a veux dire quoi a ? ya encore du mnage dans l'air -_-"

COMMENTAIRE

DE SABYR LE

09/08/2010 17:41:38

j'ai fait tout les tapes mais j'ai pas ecri le code je sais o je vais le mettre merci

COMMENTAIRE

DE SABYR LE

09/08/2010 17:43:14

et aussi je sais pas le code que je vais tapper

COMMENTAIRE

DE

ADN56

LE

09/08/2010 17:54:05

1-ne fait pas un post chaque ligne de ton commentaire 2-lire, c'est avant tout comprendre, si tu as des difficultes comprendre le tuto ouvre un message sur le forum svp. Mayzz te dis : -> Le code est saisir dans le formulaire 'Form1' entre le dbut et la fin de classe. Et je rajoute que si tu ne sais pas o est le dbut et la fin de la classe form1, il faut essayer un autre tuto avant celui l ! cordialement Ps : les modos vous voulez pas me filer les droits pour faire le mnage sur ce tuto MDR ^^, n'ont plutt Mayzz il plus sage que moi :D (qui m'a coiff au poteau en plus, niveau rponse) COMMENTAIRE
DE

MAYZZ

LE

09/08/2010 17:54:57

Bon, ce tuto n'est pas destin aux ptissiers, aux boulangers aux bouchers, aux facteurs, aux maons... Il est destin aux dveloppeurs novices et ceux qui n'ont aucune comptences mais qui dsirent apprendre ! Ou est l'apprentissage si tu ne sais mme pas ce que signifie le code ni ou il faut le taper. Commence par apprendre les bases et les rudiments du langage avant de t'attaquer un projet de donnes. Tape 'Cours VB.Net' sur Google et clic sur le 1er lien. Voila. COMMENTAIRE
DE

MAYZZ

LE

09/08/2010 17:58:18

"plutt Mayzz il plus sage que moi" Mon pauvre pas de ce temps, si il y a bien quelqu'un qui ne pourrait devenir admin ce serait moi, je ferais des abus de 'boutons supprimer' (en particulier sur le forum ou j'effacerais 50% des posts journalier ^^), et je me ferais trait d'admin zl. COMMENTAIRE
DE SABYR LE

09/08/2010 23:34:17

est ce je vais juste copier le code et le coller ; merci d'avance

COMMENTAIRE

DE

SHAEGAL

LE

10/08/2010 01:13:31

Bonjour Mayzz et ADN56, Je vais prendre le risque de faire l'avocat du diable en essayant de dfendre les quelques nophytes qui se retrouvent sur ce tuto, qui m'a d'ailleurs beaucoup aider et dont je remercie l'auteur. (Quelques questions vont suivre) Ceux-ci dbutent dans ce domaine en autodidactes et commencent effectivement leurs recherches sur internet

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
sans connatre les mots-cl ncessaires. Et certains chouent naturellement sur ce tuto qualifi "pour dbutants". Et l, c'est le drame. J'imagine que c'est pour cette raison que les modrateurs laissent le sujet ouvert tout dbutant digne de ce nom et n'affectent pas les droits tous ceux qui s'estiment un peu trop. J'ai commenc sur Commodor 64 en BASIC, et si tout le monde m'avait envoyer balader, je n'aurait jamais entendu parler de "Formatage", l'poque ncessaire pour inscrire des donnes sur disquettes 5,25 pouces. C'a paraissait tellement vident que personne n'y pensait. Et c'est en "emmerdant" un collgue professionnel en dveloppement qui une une lumire et m'en fait part. Je pense donc qu'il faut excuser tous ceux qui se prsentent sur ce tuto car ils n'ont aucune ide d'o ils sont et si c'est le dbut. Je sais que a peut parfois tre nervant car je dispense moi-mme des cours de math, mais il faut rester zen. Au risque de me faire un ennemi, qui pourtant m'a beaucoup apport de rflexion avec ses codes et je l'en remercie, mes questions s'adresseront exclusivement Mayzz qui semble avoir une me plus pdagogue. Car je suis moi-mme menuisier de mtier mais dveloppeur (c'est un bien grand mot) autodidacte par passion. J'aimerai avancer un peu plus loin dans la gestion des BDD. Est-il possible (et si oui de quelle faon) d'avoir un ID personnalis auto-incrment? Genre AA000, AA001, etc... Lorsque je crer deux tables de la faon de ton tuto, pourquoi la deuxime table n'a pas la commande DELETE? Sommes-nous oblig de travailler avec un formulaire de saisie alors qu'on pourrait le faire directement sur le DATAGRID? Y'a-t-il moyen que cette BDD soit "externe" au programme et pouvoir choisir son PATH ds l'installation? Mais peut-tre suis-je l hors sujet ou bien ces questions seront abordes lors d'un prochain tuto. Si c'est le cas, a-tu une ide de la date de sa parution? Si c'est dans la mme philosophie que celui-l, je suis preneur. Ces questions peuvent paraitre dbiles certains mais font partie de mon panouissement personnel. J'espre ne pas m'tre embrouill avec cette communaut qui m'apporte chaque jour des solutions mes projets... ;-) COMMENTAIRE
DE

MAYZZ

LE

10/08/2010 02:38:50

@Shaegal> Sache que d'abord j'apprcie grandement ta dmarche de vouloir prendre la dfense des membres dbutants de ce site et ce, avec courtoisie et politesse. C'est donc pour cela que je vais me "prendre la tte" te rponde en relatant des discussions qui ont eu lieu des dizaines de fois ici... "J'imagine que c'est pour cette raison que les modrateurs laissent le sujet ouvert tout dbutant digne de ce nom et n'affectent pas les droits tous ceux qui s'estiment un peu trop." Le problme vient du faite que la politique trop 'laxiste' mon gout des webmasters laissent le champ libre tout code ou commentaire du moment qu'il ne comporte pas d'insulte ou de discrimination raciale. De ce fait ce site perd de sa qualit de jours en jours et c'est un incroyable fourre-tout. C'est trs dommage, pour ma part je tiens beaucoup ce site qui m'a permis d'en apprendre autant. Voici par exemple une source de programme qui n'a rien faire ici et qui pollue : http://www.vbfrance.com/codes/GESTION-COMMERCIAL_52146.aspx Sachant que s'en est une parmis tant d'autres. "Je pense donc qu'il faut excuser tous ceux qui se prsentent sur ce tuto car ils n'ont aucune ide d'o ils sont et si c'est le dbut." Nous faisons beaucoup de reproches aux dbutants, le premier tant l'impolitesse, j'imagine que tes lves en cours te disent bonjour, s'il vous plait et merci, tre dbutant ne permet pas de manquer de respect aux autres membres. Deuxio, la plupart des dbutants qui viennent ici, n'en n'ont rien faire de la programmation, ils ne sont pas passionns, ce qu'ils veulent c'est que qu'on fasse leur exercices de prog. et parfois mme leur travaille leurs place. J'en prends par exemple ce post : http://www.vbfrance.com/forum/sujet-REPRODUCTION-LAPIN_1459976.aspx Ou encore certains autres qui nous demande de crer gratuitement dans une urgence totale une application complte de gestion d'un camping prtextant qu'ils sont dbutant. Et bien souvent ce sont toujours le mme type de membres qui viennent ici pour prendre et ne partagent jamais. tre perdu est une chose, mais manquer de respect, pourrir le site et se servir des gens en est une autre, beaucoup de membres chevronns on quitts le forum cause de cela, et ne viennent plus dposer leur source de peur de les voir mises en ventes 3 jours plus tard. Car le temps ou les sources servaient l'apprentissage est dsormais rvolue. Reprenons ce tuto, j'ai du pass 3 heures le faire, pour justement rpondre des dbutants qui ne savent pas trop manipuler les donnes, j'ai dtaill au maximum, ce tuto comporte 60 captures, sa source en est disponible mais cela ne vas toujours pas, moi aussi je suis autodidacte depuis 10 ans et perso j'ai suivis des tuto et des ouvrages 10 fois moins dtaills que celui-ci, c'est donc que pour moi ces 'gens' ne veulent pas apprendre, ils ne font aucun effort ce qu'ils veulent c'est qu'on apprennent leur place, malheureusement ce n'est pas possible. Je pourrais en parler des heures, mais ce que je te montre la n'est qu'un aperu, si tu traine un peu le forum tu t'en rendra vite compte, je vais donc m'arrter l. Passons tes questions d'ordre technique : "Est-il possible (et si oui de quelle faon) d'avoir un ID personnalis auto-incrment?" Oui, en modifiant le type de valeur (INT) et en dfinissant le champs auto-incrment. "Lorsque je crer deux tables de la faon de ton tuto, pourquoi la deuxime table n'a pas la commande DELETE?" Si ta deuxime table n'a pas eu de requte DELETE auto gnr c'est que l'objet CommandBuilder n'a pas trouv de faon de la crer, rappelons que le CommandBuilder, cre une requte DELETE partir de la commande SELECT. Vrifie donc que ta cl primaire y soit bien slectionne. "Sommes-nous oblig de travailler avec un formulaire de saisie alors qu'on pourrait le faire directement sur le DATAGRID?" Non, je l'ai fais comme cela, car je ne trouve pas du tout pratique l'ajout la suppression et la modification partir du DataGridView, les modifications se font la validation et la suppression via la touche 'Del', pour un utilisateur lambda ce n'est pas intuitif. "Y'a-t-il moyen que cette BDD soit "externe" au programme" Bien sr il suffit de modifier la chaine qui de connexion (contient l'emplacement de la base) de chaque TableAdapter avant que ceux-ci ne soit utiliss. "et pouvoir choisir son PATH ds l'installation?"

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

C'est possible avec Visual Studio pro seulement car les projets d'installation sont lgrement plus souples et permettent plus de fonctionnalits. J'ai rpondu un peu vaguement tes questions mais si tu souhaites plus de prcisions, je suis souvent sur le forum, n'hsite pas poster, tu peux me mettre les liens vers tes posts en MP. Il y aura bientt un autre tuto Base de donnes #2, travaillant avec plusieurs tables en relations et peut tre les connexions distantes pour changer un peu. Pour sa publication je l'ignore encore, j'y travaille ds que j'ai un peu de temps de libre et l'envie de m'y mettre. Voila, je pense vraiment que cela sera mon commentaire le plus long et que j'aurais mis un sacr moment rpondre ^^ (Difficile de faire pire). COMMENTAIRE
DE

MAYZZ

LE

10/08/2010 03:21:57

J'oubliais de prciser que pour chaque lien, tu y trouveras des commentaires que j'ai posts exprimant mon ras-le-bol et/ou mon mcontentement, premire vue cela peut sembler tre un raction excessive de ma part (et de celle de certains autres membres) mais il faut vraiment remettre les choses dans leur contexte, pour cela il faut frquenter ce site trs souvent pour comprendre. Voici un dernier exemple dmontrant un petit peu le 'Contexte' en question : http://www.codes-sources.com/forum/sujet-DEVELOPPEMENT-SITE-WEB_1451321.aspx?p=5 COMMENTAIRE
DE

ADN56

LE

10/08/2010 07:38:09

Salut, bon visiblement SHAEGAL trouve que je la pette un peu trop ? Ben j'm'en fou, la seul chose que je reproche au dbutant c'est de pourrir ce tuto avec des questions stupide ! je cite : et aussi je sais pas le code que je vais tapper. est ce je vais juste copier le code et le coller ; merci d'avance Et voila comme tous il suffit de copier / coller, (c'est comme cela que l'on apprend) alors qu'en plus MAyzz c'est fait chier pondre une source exemple qu'ils ne sont mme pas foutu de trouver ! Tu ne le sais pas car le mnage t fait mais cela va faire la seconde fois que je demande aux modos de faire le mnage sur ce tuto. Ce ne sont pas des femmes de mnages ! La seul chose que je demande, c'est lorsque l'on a des questions qui ne rentre pas de faon cohrente dans le sujet c'est d'aller le poster sur le forum en citant le tuto ! C'est la base d'un forum ! tout comme le merci et le bonjour, les deux mots que l'on apprend en PREMIER en langue vivante. Dire qu'il y 6 mois je me frittais avec BIGBOSS69 parcequ'il dcendait les codes merdiques et que maintenant cela devient tellement la norme que moi mme je fini par penser comme lui ! Mayzz raison, les sachants foutent le camps par dgout et le jours o il ne restera plus que des petits programmeurs de merde comme moi, ben le forum sera mort. Tu vois Mayzz je bosse depuis notre dernire conv MSN sur le code/tuto des classes mtiers en liaison avec ton tuto pour y choper les datas, ben j'suis pas sr du tout de le publier ! kenavo COMMENTAIRE
DE

SHAEGAL

LE

10/08/2010 10:33:23

Bonjour, Je m'attendais une rponse plus foudroyante d'ADN56, mais a va. Non, publie-le! Tout m'intresse. Malgr tes ractions excessives (l'emploi du breton pourrait l'expliquer. Je plaisante), je prends toujours en compte les posts et commentaires que tu dposes. C'est toujours riche d'enseignement. Alors, ne soit pas vex et voit en moi quelqu'un qui se faisait juste l'avocat du diable. Mayzz. Merci (je crois que j'avais oubli dans le post prcdant) pour tes prcieuses rponses. Vu l'heure tardive o tu as rpondu, j'espre que tu as pu dormir un peu. Pour ma part, je suis en vacances. Mon employeur tant un peu radin (fonctionnaire), je n'ai eu droit qu' la version 2008 Express Edition. Ce que j'ai oubli de prciser prcdemment. L'ide tait de crer une BDD sur pocket pc consultable avec un pc en vue de crer un graphique et autres statistiques. Genre relev des compteurs EDF, GDF et autres. Faut bien dbuter par quelque chose. Quant la fonction DELETE de la seconde table, elle ne contient pas de cl primaire mais utilise celle de la premire table comme rfrence. Le sujet de ce tuto n'en tant pas ce stade, il est peut-tre souhaitable d'en parler en MP. Non? Il vrai qu'en tant que non nophyte, lorsque je cherche un code ou un tuto, je sais chercher ce dont j'ai besoin. Mme si la perte de temps filtrer peu sembler importante, je fini presque toujours par le rattraper en trouvant le bon post. Il faut juste se donner la peine de fouiller. Tout comme sur une brocante, on fini souvent par trouver la perle rare. De fait, je ne suis jamais tomb sur des exemples tels que ceux que tu m'as cit. Il y a effectivement de l'abus. Le multi-passionn que je suis ne sais pas voir le mal l o il est. Et mes cours de math sont dispenss directement chez l'habitant. J'ai donc toujours droit aux politesses d'usage que sont "bonjour", "merci" et "au revoir" (ou kenavo). Je ne retourne pas ma veste. Je met juste un bmol ma raction aux vues des lments cits plus haut. A bientt... COMMENTAIRE
DE

ADN56

LE

10/08/2010 11:55:29

Re Shaegal, tu sais, pour commencer si je pense ne pas publier ce tuto c'est pas du tout vis vis de toi, mais belle et bien vis vis des prises de tte que Mayzz affrontes depuis quelques temps avec le sien. Merci de l'interet que tu porte mes commentaires, et sache que j'entend avec plaisir ton humour. Tu trouves mes ractions exessives surrement parcequ'elle le paraissent de prime bord (Breton tte de cochon me diras tu ^^) En fait, non elle ne le sont pas, elles sont la consquence d'un ral le bol qui s'accumule sur plusieurs forums ou parfois je dois faire le mnage moi mme. Qu'elle que soit le sujet cela devient partout pareil ! Exemple sur un forum electrotech : "Lut, je pass mon bac dem1 midi, kk1 d formule pr me ?" ou "1 moteur f 14Kw en tri, sa f koi en ampaire??vite je ren mon truc 2m1!!" Mieux ! Mp reu l'instant : Aujourd'hui 11:07 Sujet: moteur a cauran continu salut je veus fair un instalon d'un motur a caurant avec varaiteur de vitesse continu 25.6kw u=400v I=74A tension d'excitation 200v caurant d'excitation 3.6A on utilison soit potonciomtre soi bouton poussoir +/- je veus le schma de puissance et de commande et carasistique que je base sur le variareur de vitesse et merci davant

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
Tu vois ce que je veux dire ???? Alors oui au bout d'un moment cela saoule et la soupe me monte au nez comme la moutarde au milieu de la figure. Note que cette situation m'aura permis de discuter avec toi. Conclusion : l'investissement personnel dans une recherche est inversement proportionnel la puissance technologique pour ce faire ! cordialement. COMMENTAIRE
DE

SHAEGAL

LE

10/08/2010 12:51:46

ADN56, Cela montre quel point tu te sens impliqu sur ce forum et sur d'autres apparemment. Pourquoi une telle implication alors que tu n'es pas modrateur? Surement un sens aigu du partage de la connaissance. Tant mieux finalement. Les exemples de Mayzz taient dj parlants. Les tiens ajoutent aux nombre d'abus dj bien prsents. Et en MP qui plus est! Rassure-moi, c'est du copier/coller? Question rhtorique bien sur. Il faut bien entendu filtrer les dbutants sincres de ceux qui qui veulent qu'on leur mche le travail. Les fainants par dfinition. Corrige-moi si je me trompe, mais ton raz-le-bol sur ce tuto semblait ne plus faire la distinction entre les deux. Le mnage tant fait, on ne saura pas. Mais nous ne somme pas l pour nous faire des procs. Je suis ici pour apprendre. Et je t'avoue que c'est une soif que je n'arrive pas tancher. Et puis, ici, c'est un forum sur le dveloppement, pas sur une philosophie de l'ducation. ^^ Quelque soient vos raz-le-bol, toi et Mayzz, il faut continuer nous aider, nous les dbutants sincres. Ne serait-ce que pour ceux qui en veulent. Tout comme il suffit d'une brebis galeuse pour tout infecter, il suffit d'une bonne volont pour que ce tuto, ce forum, ce site aient une raison d'exister. J'espre en faire partie et ne pas vous dcevoir, mme si parfois mes questions peuvent paraitre purile en dveloppement. Cordialement COMMENTAIRE
DE

MAYZZ

LE

10/08/2010 13:17:32

Rassures-toi Shaegal, nous savons dissocier de suite les membres qui ont envie d'apprendre et les autres fainants et ce n'est pas trs difficile, cela se ressent dj premirement dans l'orthographe et la grammaire (je dis cela malgr que je sois trs mauvais en franais, j'en veux pour preuve que c'est ADN qui a fait la correction de ce tuto, d'ailleurs je me suis aperu ne pas avoir tout corrig, j'en ai oubli, bref..), puis cela se sent en suite dans la politesse et enfin dans la demande, le sujet du post quoi. COMMENTAIRE
DE

ADN56

LE

10/08/2010 16:36:05

Question rhtorique c'est malheuresement le vrai copi/coll -_-" Cela devient quotidien ce genre de message ! Pour mon investissement, je vais te rpondre, mais en MP. D'abord parceque c'est perso, ensuite parceque ce tuto est dja bien tout vrrol.

COMMENTAIRE

DE

SHAEGAL

LE

10/08/2010 20:23:58

La langue franaise. Langue complexe et combien riche. Il serait dommage de ne pas l'exploiter au maximum. Sinon, ce serait comme acheter le dernier pc ultra-performant juste pour jouer au morpion! Un simple petit tableau blanc ferait l'affaire. Et puis, tu t'exprimes plutt bien Mayzz. Soit, il y a des fautes de frappe. C'est la magie du clavier. Il est plus facile de se concentrer sur un livre que sur un cran. A mon sens. Bref. Tu n'as pas rpondu mon commentaire du 10/08/2010 10:33:23. Afin de t'pargner sa recherche, j'ai fait un copier/coller. a semble tre une tradition ici.^-^ "L'ide tait de crer une BDD sur pocketPc consultable avec un pc en vue de crer un graphique et autres statistiques. Genre relev des compteurs EDF, GDF et autres. Faut bien dbuter par quelque chose. Quant la fonction DELETE de la seconde table, elle ne contient pas de cl primaire mais utilise celle de la premire table comme rfrence. Le sujet de ce tuto n'en tant pas ce stade, il est peut-tre souhaitable d'en parler en MP. Non?" Merci d'avance......... ;-) COMMENTAIRE
DE

MAYZZ

LE

10/08/2010 20:55:27

C'est donc pour cela que tu n'as pas de requte DELETE gnr automatiquement dans ton TableAdapter. Il faudra donc que tu la saisisse la main. Et oui le manag ca a du bon mais il ne faut pas en abuser ^^ Ce que je ne comprend pas en revanche c'est comment tu lie tes deux tables. Voici un exemple de liaison : Table Etudiants - ID - ClasseID - Nom - Prenom Table Classes - ID - NomClasse - Niveau - Annee Ici les entres des tables classes auront toutes deux un ID, afin de les identifier. Mais l'entre de la table 'Etudiants', possdera un lien mnant une entre de la classe 'Classes', ainsi chaque tudiant possede une classe : ClasseID(Etudiant) => ID(Classe). Voila ce qui permet de faire une liaison entre deux tables dans une base de donnes. Il y a plusieurs mthodes bass sur ce pricipe mais je les dtaillerais peut tre dans le prochain tuto. COMMENTAIRE
DE

SHAEGAL

LE

11/08/2010 01:20:58

Voici un projet en cours de dveloppement. Quoique celui-ci ne soit pas trs avanc car je sche au niveau de la BDD. Ce projet vise simplement saisir des relevs de spiromtrie par patients. Actuellement, j'ai uniquement couch sur du papier les tables suivantes: Table Patients - IDPatient - Nom - Prnom

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
Sexe Date de naissance Dpartement de rsidence Date du prochain RDV Date du prochain relev

Table Relevs - PatientID - Date du relev - Valeur - Commentaires Fournir un IDRelev dans cette dernire table me semble inutile. Que penses-tu de mon raisonnement? J'ai aussi suppos que ma table "principale" devait tre celle des patients. Aujourd'hui je doute de mon choix. Quoique l'ID est bien sur celle-ci. Autre question: tu m'as dit qu'il est possible de personnaliser l'ID auto-incrment en choisissant par exemple le type de valeur INT et en choisissant le mode autoincrment. Ok. Mais que fais-je de newid()? Quelle est la syntaxe lors d'un ajout d'une ligne de donnes? Et quand on supprime une ligne, son numro ne risque-t-il pas de rapparaitre? A moins de ne pas supprimer la ligne et ajouter une case cocher "rform". J'avais fait quelques essais dans ce sens et j'affichais volontairement l'ID. J'ai vu apparaitre quelques bizarreries o les ID s'ajoutaient. Exemple: ID=1. Jajoute une ligne. ID=1 passe ID=2. Et le nouvel ID=3. Je me retrouve avec les ID 2 et 3. Le 1 disparu. Je sais pas si je suis bien clair. ;-) Je crois que c'est force de "trifouiller" que j'en ai perdu le fil et je ne savais plus o j'en tait. Honte moi. ^^ Peux-tu m'aider sur ces quelques questions. Merci et ... bonne nuit. ;-) COMMENTAIRE
DE

MAYZZ

LE

11/08/2010 01:33:43

En fait, pour ton schma de base, il me parait correct dans ce cas. Simplement lors ce que tu voudras supprimer un enregistrement dans ta table Relevs partir de quelle critre vas-tu identifier cette ligne ? DELETE FROM Relevs WHERE PatientID = @PatientID Par exemple, te supprimera tous les relevs du patient. C'est pourquoi on ajoute un ID, c'est en fait l'ID de ligne. Pour l'auto-incrmentation je ne l'utilise pas. C'est sujet conflits, tu n'arriveras pas connaitre l'ID de la ligne que tu viens d'ajouter en comptant le nombre d'enregistrement de ta table, si c'est ce que tu cherches faire. Ce pourquoi je travaille avec des GUID, tous unique, t'es sr de ne pas te planter et tu peux te resservir de ces ID pour d'autres applications. COMMENTAIRE
DE SABYR LE

11/08/2010 12:11:03

moi jai un projet o il y a juste une table "les compteurs d'eau" -numro -date -Localit -Police -Secteur -Tourne -Adresse -Nature Locale -Emplacement -Num_serie cpt -Type compteur -Nbre roue -Calibre -Annee -marque -Index lu -Anomalies -Fraude je vous demande svp de m'aider dans le code SVP merci D'avance

COMMENTAIRE

DE

SHAEGAL

LE

11/08/2010 12:31:35

Logique implacable! Je n'avais effectivement pas pens que si je supprime un PatientID de ma deuxime table, je supprime TOUTES les donnes s'y rfrents. Alors l'IDRelev devient indispensable. Merci Mayzz. Si tu le permets, je vais quand mme passer en mode MP pour les autres questions que j'ai te poser afin de ne pas perturber ce tuto et laisser le champ libre ceux qui n'en sont pas encore l. A bientt Bye COMMENTAIRE
DE

MAYZZ

LE

11/08/2010 12:36:59

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
Je vais encore me rpter mais ici n'est pas vraiment l'endroit pour a, ce sont les commentaires des utilisateurs sur le tuto, pour les questions techniques, postez sur le forum les demandes d'aide relatives vos projets et mettez-moi le lien en MP, je viendrais vous aider si je le peux (en respectant le rglement du forum sinon personne ne vous rpondra). COMMENTAIRE 17/08/2010 10:35:49

DE DANYDESIGN LE

votre tuto est vrement russi...mais j'ai un tout ptit souci avec ces erreurs : 1. La rsolution de surcharge a chou, car aucun 'Update' accessible n'accepte ce nombre d'arguments. 2. Arguments trop nombreux pour 'Public Overridable Overloads Function Insert(Nom As String, Prnom As String, Age As Short?, Adresse As String, CP As String, Ville As String, pays As String, Tel As String, Mobile As String, Fax As String, commentaire As String) As Integer'. COMMENTAIRE
DE GILOUSAB1 LE

27/08/2010 18:00:03

Bonjour, De mon cot non plus cette fonction ne passe pas. l'IDE me souligne TXT_Fax.Text : Erreur 1 Impossible de convertir une valeur de type 'String' en 'Tableau 1 dimension(s) de Byte'. COMMENTAIRE MAYZZ 27/08/2010 18:25:16

DE

LE

Je l'ai dj dis plus haut : Pour ceux qui rencontrent des soucis, j'ai fourni la source du projet (en dbut de tuto), ce n'est pas pour rien ! Et pour ceux qui ont des projets personnaliss, je ne peux rien pour vous sans voir votre code, et je ne suis pas Mme Irma ! Alors postez un message dans le forum, en respectant le rglement et mettez moi le lien en MP. Merci ! COMMENTAIRE
DE FBALDE LE

07/09/2010 14:32:22

Bonjour, un bon cour de vb avec les bases de donnees c'est tres interressant sa ma permis de mieux comprendre.mais seulement j'ai un probleme avec les tats comment creer un etat en vb 2008.Merci de me repondre

COMMENTAIRE

DE KOMOUSSA LE

23/09/2010 17:17:16

trs bon tuto

COMMENTAIRE

DE

JLUC01

LE

10/10/2010 01:44:05

Bonjour, Premierement, tres bon tutoriel. J'ai apris pas mal de choses. Ma prochaine etape sera d'essayer de faire la meme chose (+ ou -) avec plus de code, c'est a dire sans l'assistant de VS. Cependant, je ne comprend pas tres bien le ID defini avec GUID. Cela parait pourtant l'ideal pour une cle primaire. As-tu plus d'informations sur l'utilisation de GUID dans des bases de donnees? J'ai refait le Tuto, cela marche tres bien, mais quand j'essaye de le changer legerement, je coince sur cette ligne: Dim ID as Guid.... ...avec le message d'erreur: System.ArgumentOutOfRange, Exception was unhandled Message="Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index"... Quelle erreur ai-je pu faire? Si tu as une idee sur le sujet, cela pourrait m'aider. Merci encore. JLuc01 COMMENTAIRE
DE

ADN56

LE

10/10/2010 16:31:22

tu as dclar une string pour la cl primaire dans ta bdd, le guid est dans ce format. ++

COMMENTAIRE

DE EDDYPHAN LE

11/10/2010 14:27:44

Trs bon tuto. a m'a vraiment aid

COMMENTAIRE

DE RALFRED LE

11/11/2010 19:29:20

Flicitations pour cet excellent tuto qui m'a fait tout comprendre. Mille mercis

COMMENTAIRE

DE CADAM LE

16/11/2010 22:48:16

Flicitation, mon fils qu'a dix ans russi sa premire appli grace ce tuto.. toutefois il m'a pos une colle, en fait deux: comment rester sur la mme row (ou y aller) apres un apdate ou un insert, et comment rcuprer l'id de l'objet fraichement insr ? encore merci

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
COMMENTAIRE
DE

MAYZZ

LE

17/11/2010 11:12:50

Ben didonc 10ans faire une appli de donnes ? Chapeau ton fils, ca promet pour l'avenir !!! Enfin des questions intressantes, merci ^^ Pour le mme row, il suffit de rcuprer l'index du CurrentRow du DataGridView. 'Avant le code de l'Update/delete : Dim CurrentIndex As Integer = DataGridView1.CurrentRow.Index 'Code de l'update/delete 'Requte SELECT => Fill (DGV) 'Aprs l'update/delete: If DGV.Rows.Count > 0Then If CurrentIndex < DGV.Rows.Count Then 'CurrentRow est readpnly, il faut donc prciser une celulle et non une ligne (CurrentCell) DGV.CurrentCell = DGV.Rows(CurrentIndex).Cells(0) Else DGV.CurrentCell = DGV.Rows(DGV.Rows.Count - 1).Cells(0) End If End If Pour ce qui est de l'ID c'est pour cela que je travaille avec des GUID et non avec des Integer auto incrments. La particularit du GUID est qu'il est unique, on peut donc en instancier un puis l'insrer dans la base sans crainte d'avoir un doublon, pas comme pour les chiffres ou il faut alors laisser la base grer l'incrmentation, ce qui oblige faire une requte SELECT pour rcuprer l'id de la ligne insrer. On a directement l'id sous vb et on peu travailler avec. Dans ce tuto je laisse SQL Serveur gr la cration de nouveau GUID lors des requte Insert (newid()), pour que lors de ces requtes nous ne prcisions pas d'ID en paramtres. La solution la plus simple, pour viter de jouer avec des pointeurs ou de faire des requtes SELECT est de prciser cet ID en modifiant notre requte Insert dans le DataSet (Rajout de l'ID): INSERT INTO Contacts (ID, Nom, Prenom, Age, Adresse... VALUES (@ID, @Nom, @Prenom, @Age, @Adresse... Ainsi lors de l'appel notre requte il faudra prciser un ID de type GUID : Dim ID As Guid = Guid.NewGuid Dim NbLine As Integer = ContactsTableAdapter.Insert(ID txt_Nom.Text, _ txt_Prenom.Text, _ CShort(nud_Age.Value), _ txt_Adresse.Text, _ txt_CP.Text, _ txt_Ville.Text, _ txt_Pays.Text, _ txt_Tel.Text, _ txt_Mobile.Text, _ txt_Fax.Text, _ txt_Email.Text, _ txt_Commentaire.Text) Ce qui permet d'avoir une variable ID contenant le GUID de la ligne ajout. Voila ++ COMMENTAIRE
DE CADAM LE

17/11/2010 17:35:33

Merci pour la rp trs rapide vraiment chapeau,par contre j'ai une erreur en excutant le code: - Me.DGV.FirstDisplayedCell = Me.DGV.CurrentCell - Me.DGV.FirstDisplayedCell = DGV.Rows(CurrentIndex).Cells(0) Erreur: {"La cellule active ne peut pas tre paramtre en tant que cellule invisible."} Ex : System.InvalidOperationException COMMENTAIRE
DE

MAYZZ

LE

17/11/2010 17:43:21

arf :/ Ouais en effet, la cellule 0 est celle de l'ID et donc invisible, mais c'est pas bien grave suffit de mettre une cellule visible de la ligne Cells(1). COMMENTAIRE
DE CADAM LE

17/11/2010 23:09:54

Super!! merci

COMMENTAIRE

DE CADAM LE

24/11/2010 19:36:34

est-il possible de stocker et rcuprer les donnes rtf utilisant un RichTextBox sans perdre la mise en forme dans la base de donnes SQL CE on cr une colonne "RtfDoc" NVARCHAR OU BINARY ?

COMMENTAIRE

DE

MAYZZ

LE

24/11/2010 20:10:32

Bien oui c'est possible, il suffit de rcuprer le texte format via la proprit Rtf du richtextbox : RichTextBox1.Rtf Pour le type, plutt NVARCHAR. ++

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
COMMENTAIRE
DE

RAVIOLIII

LE

03/12/2010 18:50:17

bravo mayzz pour ce travail je voulais en premier lieu t'en remercier car a faisait un petit moment que je parcourais la toile pour russir faire une bdd locale en sql nanmoins j'ai un souci concernant le Datagridview :S j'ai bien li mes textbox la table de donnes du projet et le datagrid galement comme tu l'as expliqu par contre lorsqu'en excution, je tape et ajoute quelqu'un (avec petit message de confirmation) je n'ai rien qui apparait dans le datagrid gauche merci de m'clairer COMMENTAIRE
DE JDKTDI LE

05/12/2010 22:24:25

merci frro pour ce tutoriel j'ai bien aim le

COMMENTAIRE

DE

MAYZZ

LE

06/12/2010 11:03:25

RaVioliii> Poste moi ton code en MP.

COMMENTAIRE

DE

DUKE49

LE

27/12/2010 09:08:34

Super tuto Mayzz ! J'ai t redirig ici depuis ce sujet: http://www.vbfrance.com/forum/sujet-ECRITURE-DANS-BASE-ACCESSDEPUIS-VB-2010_1488507.aspx#6 Il me restera plus qu'a galrer quelque semaine pour devenir un ace de base de donnes ^^ Je finirai par comme tu l dis et je l'ai remarqu aussi depuis la fin du VB6, je cite: << ... le temps ou les sources servaient l'apprentissage est dsormais rvolue. >> COMMENTAIRE
DE

SHAEGAL

LE

11/01/2011 15:46:27

Salut Mayzz, As-tu eu l'envie de crer ton tuto "Base de donnes #2"? Car il m'intressera trs certainement.

COMMENTAIRE

DE

MAYZZ

LE

11/01/2011 19:13:05

Salut, En effet c'est prvu mais mon planing est complet pour un bon moment, du coup je n'ai pas le temps de m'en occuper. COMMENTAIRE SHAEGAL 11/01/2011 20:04:06

DE

LE

C'est la ranon du succs. Et succs il y a vu le nombre de posts sur ce tuto, sans compter ceux qui ont t suprims. Bien que j'ai su volu de mon ct, j'attends ton prochain tuto avec grande impatience. A bientt... COMMENTAIRE
DE

FREDBOUT140977

LE

23/01/2011 22:43:56

Excellent Tuto, j'ai suivi ce tuto et ajouter un champ "Nom", un champ "Prnom", un champ "Age" et j'aimerai ajouter un champ "Date de naissance", pour ajouter la date de naissance dans ma base SQL pas de problme mais dans le form1 est ce que je dois mettre un "DateTimePicker" ou autre chose ? Et qu'est ce que je dois mettre dans le code car j'ai bien dclarer p1, p2, p3 etc... mais dans le code il me rajoute "une valeur de type 'string' ne peut pas tre convertie en 'system.guid' voici ce que j'ai : 'Appel de la procdure Update de notre TableAdapter qui tranmettra 'la requte SQL UPDATE. Dim NbLine As Integer = PatientsTableAdapter.Update( _ txt_nom.Text, _ txt_Prenom.Text, _ txt_Age.Text, _ txt_DatedeNaissance.Text, _ ID) Et c'est dans la procdure update qui me met une erreur. Je ne comprend pas. Merci de votre rponse COMMENTAIRE
DE KANEO LE

15/02/2011 23:36:04

Bonjour tous Arriv au niveau de la figure 46, je "publie" et j'ai ce message d'erreur Value of type 'String' cannot be converted to 'System.Guid' Que dois-je faire??? Merci d'avance COMMENTAIRE
DE MATHIEU6220 LE

16/02/2011 15:34:13

Bonjours/Bonsoir, tout es ok sauf un moment, avec l'ID =S cette ligne : Dim NbLine As Integer = ClientsTableAdapter.Delete(ID) Une valeur de type 'System.Guid' ne peut tre convertie en 'String' Ainsi que l : Dim NbLine As Integer = ClientsTableAdapter.Update(txt_nomClient.Text, _ txt_prenomClient.Text, _ txt_numRueClient.Text, _ txt_rueClient.Text, _ txt_cpClient.Text, _

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
txt_villeClient.Text, _ txt_telClient.Text, _ txt_mobileClient.Text, _ txt_mailClient.Text, _ ID) mme erreur donc pouvez-vous m'aider svp ? :( COMMENTAIRE
DE MATHIEU6220 LE

17/02/2011 15:59:57

Problme rgler mais un autre est intervenus =S Le problme vient de la suppression ainsi que la modification ! l'erreur est la mme. La voici : L'exception InvalidCastException n'a pas t gre ! Cette erreur intervient sur la ligne : Dim ID As Guid = CType(DataGridView1.SelectedRows(0).Cells(0).Value, Guid) Sauriez-vous pourquoi ? Et avez-vous une solution svp ? :( COMMENTAIRE
DE MATHIEU6220 LE

18/02/2011 14:34:12

Plus aucuns problmes c'est rsolus :) Merci pour le tuto ;)

COMMENTAIRE

DE KANEO LE

20/02/2011 22:12:21

Justement Mathieu, qu'avez-vous fait pour que ca marche???

COMMENTAIRE

DE KANEO LE

24/02/2011 12:57:50

Justement Mathieu, qu'avez-vous fait pour que ca marche???

COMMENTAIRE

DE PTITROB59 LE

28/02/2011 16:58:46

TUTO GENIALLLLL!! Franchement, merci d'avoir pris le temps de faire ce tuto car pour dmarrer avec les bases SQL je n'ai rien trouv de plus explicite sur la toile. Grce a toi j'ai pu dmarrer mon programme. Juste un piti mais vraiment piti bemol: un petit manque d'explication sur les valeurs des champs de la table.(Genre newid(), Cl primaire...) COMMENTAIRE
DE NAGNANGO2 LE

20/03/2011 12:03:47

Felicitation pour le travail moi jai un souci je veux uniquement inserer des donnees dans ma bd en passant par mon datagridview et j aimerai que a chaque fois que je demare mon application je veux que tous ce qui se trouvais ds ma bd soit supprime car je rempli mon datagrid view avec des donnees differents a chaque lancement de mon apllication. si vous pouvez m aider cela me fera plaisir meme si je suis conscient que vous avez beaucoup fait deja tanks COMMENTAIRE
DE SPOOKYZ LE

12/04/2011 19:26:12

Salut Mayzz et salut tous un grand merci pour ce tuto super bien fait moi je suis vraiment dbutant et j'ai encore beaucoup de mal avec ce concept d'accs aux donnes mais bon je m'accroche et grce a ton travail je progresse. Alors voila pour ceux qui comme moi vont constater que les donnes disparaissent de la base de donnes c'est que c'est le fichier de donnes de travail mais il y a un deuxime fichier de donnes avec les donnes conserves pour le voir il faut dans l'explorateur de solution dvelopper l'icone "afficher tous les fichiers" et ensuite dvelopper "bin" et ensuite en fonction de ce que vous avez choisi soit dvelopper "debug" ou "release" et vous trouverez un autre fichier de donnes qui contient les bons enregistrements encore un grand merci COMMENTAIRE
DE

GALAIN

LE

14/04/2011 22:33:12

Salut Mayzz quand je pense que j'ai galr comme un malade pour faire une application de BDD avec VS 2010 en fouillant droite et gauche et je tombe maintenant sur ce super tuto Un 10/10 plus que mrit

Bravo Je l'ai imprim et je me le garde sous le coude Merci COMMENTAIRE


DE

CLAUDE AZOULAI

LE

24/04/2011 17:47:11

Merci Mayzz Ton tutoriel est formidable, cela faisait longtemps que je cherchais des explication sur la manire d'utiliser les BDD SQL. Maintenant j'en connais un peu plus, grace ton travail. J'ai eu juste un souci dans la formulation de la commande .insert, car VB2010 contrairement ce que tu affirmait, tenait absolument avoir comme 1er paramtre un index (ID). J'ai commenc par ajouter avant "Dim ID As Guid". Cela a fonctionn pour le 1er enregistrment, mais pour le suivant, a n'tait pas possible car l'index tait rest le mme. Impossible d'incrmenter l'index. En explorant l'aide en ligne, j'ai trouv "ID = Guid.NewGuid ". L a fonctionne parfaitement. Mais !!! si j'avais regarder avant, dans les messages, j'aurais trouv ton message du 17/11/2010 11:12:50 qui donnait la

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,
solution Autant pour moi. Encore merci d'avoir ralis ce tutoriel Claude Azoulai PS Qu'appelez vous poster en MP ? COMMENTAIRE
DE BOBARMAN LE

03/05/2011 12:15:19

bonjour, Je suis en train d'essayer de crer une base de donnes l'aide du tuto. Mais j'ai un probleme, je n'arrive pas compiler la source de mayzz. La premire erreur lister est la suivante Warning 1 Could not resolve this reference. Could not locate the assembly "System.Data.SqlServerCe, Version=3.5.1.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. MyLocalDataApp Et dans mon explorateur d'objet, je n'ai pas System.Data.SqlServerCe Je tourne avec visual studio 2008 Toute aide est bonne prendre COMMENTAIRE
DE

MAYZZ

LE

03/05/2011 12:22:19

Salut c'est parce que le composant redistributiable SQL Server CE a t dsinstall. tu peux le tlcharger ici http://www.microsoft.com/sqlserver/2005/en/us/compact-downloads.aspx

COMMENTAIRE

DE BOBARMAN LE

03/05/2011 13:57:52

Merci pour la rponse rapide. J'ai install comme tu me l'as suggrer. L'adresse de la DLL dans les rfrences changer, mais ca ne marche toujours pas; Aprs le message d'erreur tait: Unable to find manifest signing certificate in the certificate store. MyLocalDataApp Je suis aller dans My project => Signing => et j'ai dcoch "Sign the Clickonce manifests" Et bingo... Merci COMMENTAIRE
DE BOBARMAN LE

09/05/2011 12:04:58

Bonjour, excusez moi de vous re-dranger. J'ai eu beau lire et relire je n'arrive pas comprendre si les donnes sont stockes dans le dataset, le tableadapter, le bindingsource ou encore le tableadaptermanager. J'ai mis en place ou base de donnes en ligne, dans laquelle j'ai plusieurs tables et je voudrais moyennant un clic, pouvoir changer de table en gardant le mme binding navigator et le mme DGV. J'ai pens que ca se passait au niveau du bindingsource car il y a une proprit DataMember dans laquelle je peux choisir la table que je veux en mode design. Si je change, il me cr automatiquement un nouveau tableadapter avec la ligne qui va bien dans form.load. Avec mon bouton je change le datamember avec une ligne tq: Me.MaTableBindingSource.DataMember = MyDataSet.Table2.ToString Est qu'il y a quelque chose d'autre faire, genre un refresh, est que a ne se passe pas du tout au niveau du bindingsource? J'ai galement cherch dans les sources mais sans sucs, ce cas na pas l'air trs courant, du coup si j'y arrive je posterai ma source. COMMENTAIRE
DE

MAYZZ

LE

09/05/2011 12:32:38

Salut, Pour commencer les donnes sont toujours stocks dans la base. Mais les "DataTables" en .Net sont des classes ayant le mme schma que la table de ta base afin d'accueillir temporairement les donnes contenues dans ta base. En gros c'est l'quivalent de lire un fichier sur le disque et placer sont contenu en mmoire (vive) dans une variable. Tu peux donc modifier cette table en mmoire mais tant que celle-ci ne met pas jour sont contenu vers le fichier physique (Via update/insert/delete) ta base n'aura pas chang d'un pouce. Pour ton problme il faut savoir que le DataGridView n'a pas t cr dans cet esprit, d'ailleurs pour mettre jour une source de donnes il n'existe aucune mthode ma connaissance. La seule solution consiste a supprimer puis recrer la source de donnes. DataGridView1.DataSource = Nothing DataGridView1.DataMember = "" DataGridView1.DataSource = MaSourceDeDonnes DataGridView1.DataMember = MembreDeLaSDD Cette solution fonctionne si la source de donnes est une table thoriquement. Aprs pour un BindingSource je n'ai pas test. Dans tous les cas si tu prcise ta seconde table a ce dernier il faudra crer une instance de celle-ci et une instance du TableAdapter associ afin de pouvoir employer la mthode Fill. Si la table n'est pas remplie cela ne fonctionnera pas. COMMENTAIRE
DE BORISDU59 LE

20/05/2011 15:00:31

Bonjour, Tout d'abord MERCI, c'est le tuto que je chercher depuis un bout de temps.Merci pour ces explications claires.

COMMENTAIRE

DE CADAM LE

31/05/2011 00:44:02

Bonjour aprs un ajout (insert) le nouvelle enregistrement et place en fin de la DataGridView, pour y aller par code j'utilise:

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

'Scroller la dernire ligne. Me.DGV.FirstDisplayedScrollingRowIndex = Me.DGV.RowCount - 1 'Effacer la dernire slection Me.DGV.ClearSelection() 'Slectionner la dernire ligne. Me.DGV.Rows(Me.DGV.RowCount - 1).Selected = True a fonctionne sans pb, mais les zones texte ne suivent pas !!! et reste sur le 1er enregistrement (suite au rechargement des donnes aprs la query UPDATE) Comment faire pour agir sur l'ensemble ? Merci COMMENTAIRE
DE BOBARMAN LE

31/05/2011 10:04:13

C'est parce que ca n'a pas suivi au niveau du BindingSource, Plusieurs possibilits cela "selon moi": Le DGV ou les textboxs sont mal binds: est ce que quand tu changes de ligne en cliquant la main a marche? si a marche, je pense que le problme est que le DGV ne dclenche pas l'vnement currentItemChange dans le bindingSource ou qqch comme ca, essai de le dclencher la main. COMMENTAIRE
DE CADAM LE

31/05/2011 14:18:31

Merci bobarman pour ta rponse! la main a suit parfaitement (en utilisant les flches aussi) simplement aprs le "Fill(DGV)" j'essaye de me placer la fin et la slectionner de la DGV par le code, j'y arrive avec la ligne: *DGV.FirstDisplayedScrollingRowIndex = DGV.RowCount - 1 *DGV.Rows(DGV.RowCount - 1).Selected = True par contre les textboxs (mme BindingSource) ne suivent pas !!! COMMENTAIRE
DE BOBARMAN LE

31/05/2011 15:29:40

ce que je voulais dire, c'est trs trs mal expliqu (voir pas du tout) a se passe au niveau du bindingsource . Tu peux utiliser bindingsource.movelast()

COMMENTAIRE

DE CADAM LE

31/05/2011 23:37:27

Exacte: faut agir manuellement sur la BindingSource, merci

COMMENTAIRE

DE CADAM LE

31/05/2011 23:41:50

Merci bobarman & Mayzz c'est parfait

COMMENTAIRE

DE

LESIGNEEAGLEONE

LE

13/06/2011 19:36:57

RESPECT pour la grande Initiative. a fait un bon bout de temps que je cherche un tutoriel de ce genre. encore Merci MayZZ

COMMENTAIRE

DE

XNADEBUTER

LE

23/06/2011 03:31:06

Bonjour Comment faire pour acceder une base de ce type mais sur un emplacement reseau ? Merci COMMENTAIRE
DE

DIDIERP57

LE

01/08/2011 13:17:29

Bonjour, Merci d'avoir mis en ligne ce tuto, j'en avais vraiment besoin. J'ai bien tudi le tuto mais il ne semble pas fonctionner chez moi. (normal, je dbute) Si j'utilise le zip joint avec l'exemple, j'arrive ouvrir le projet mais lors de la gnration du projet il me met : Avertissement 1: Impossible de trouver le certificat de signature de manifeste dans le magasin de certificats. MyLocalDataApp ???? Je suis compltement nul en la matire. J'utilise Visual Basic Express 2010. J'ai fait un peu de VBA Excel et Base de donnes Access dans le pass, avec ce genre de tuto, ca permet de se mettre niveau. Merci pour votre aide Didier COMMENTAIRE
DE LABAFFE06 LE

03/08/2011 15:24:24

Bonjour , superbe tuto car il m a permis d'utiliser VB studio pour creer les objet necessaires a mon applications .( et

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

ainsi eviter les lignes de codes a la main ;-) ) Apparment tu manie tres bien Visual studio, J ai une question a propos des Id autoincrementer , j ai lue ta solution grce les guid (et je pense l'adopter) Cependant il existe dans les options de l'assistant de cration des TableAdapter une option avance permettant de gnrer la requete de rcupration de l'id juste aprs un insert (evitant ainsi les erreur possible car generer et gerer par vb studio lui mme) ... impossible de la faire fonctionner aurai tu une piste car( il serait tres pratique d avoir en retour du insert l 'id unique autoincrement plutot que le nombre de enregistrement modifies. du type ID = mydataadapte.insert(azerty, qwerty) l'aide msn est trs trs vague sur cette fonction de visual studio . Merci pour ta prochaine aide ... ;-) Pour XNAdebuter : cela dpend du moteur de base de donne et de ta version de Vb studio (si vb st express il faut coder a la main si vb st ultimate il te faut renseigner adresse ip et la connexion string dans l assistant ) le plus facile tant de crer un connection ODBC sur ton pc en source de donnees utilisateur puis d'utiliser celle ci avec VB studio . sinon il existe des connecteurs pour certaine base comme par exemple Mysql afin de pouvoir te connecter directement sur la base elle mme. J espre t avoir mis sur la piste , car je sais que mon orthographe et mes qualits d'explication sont bien loin de ce superbe tuto ! cordialement fred COMMENTAIRE
DE

MAYZZ

LE

03/08/2011 15:45:27

Salut, En fait il me semble qu'il faut faire une requte select derrire l'insert en sparant celle-ci par un point virgule, le numro de l'ID est pass en paramtre ou une chose du genre ce qui nous donne peu prs : Dim ID As Interger Dim nb As Interger = TableAdapter.Insert(ID, "Param1", "Param2") Ici nb retournera le nombre de ligne et ID contiendra l'id de la ligne qui a t insre. C'est un peu archaque c'est pourquoi je prfre travailler avec un les GUID qui sont eux tout a fait uniques. COMMENTAIRE
DE LABAFFE06 LE

04/08/2011 09:38:28

hello, il semble que cette piste soit la bonne car dans la dfinition du connecteur il est spcifi que celui ci accepte plusieurs requte en mme temps , et que last_id() est en rapport avec la connexion effectue pour le insert juste avant donc pas d erreur possible sur l id . j essaye par tout les moyen d intgrer ce type de requte dans le table adapter et la rcupration de la valeur mais VB studio 2010 ne ce laisse pas faire ;-). si tu as une ide de la mthode de ralisation , merci par avance . Pour le GUID le seul problme pour ma part est sa complexit , en effet les utilisateur de mon soft doivent saisir la rfrence d 'un document (pour l instant un ID numrique) pour retrouve celui ci. le Guid est bcp plus contraignant a la saisie . cordialement fred COMMENTAIRE
DE LABAFFE06 LE

04/08/2011 10:06:01

Hello YYYEEESSSSS, a fonctionne je me rpond (si ca peut aider certains ) la mthodologie est la suivante : on gnre la requte insert grce a l assistant vb studio; on copie le SQL dans une autre requete creer par vos soins on rajoute "; SELECT LAST_INSERT_ID();" a la suite du code SQL. l assitant va afficher un mesdsage d erreur (ne pas en tenir compte) puis on change l'executemode de la query (dans ses proprits) -> scalar . et voila cela fonctionne . je vais maintenant tudier le cas des GUID et voir si il y a moyen de simplifier celui ci. encore merci de ton aide . fred COMMENTAIRE
DE OZTHEWIZARD LE

21/09/2011 14:00:28

Excellent tuto, mais attention, n'oubliez pas de dcocher ID dans insert et dans update lors de la cration des requtes, j'avais pas fait super attention et j'avais juste mis ID=@ID pour toutes les requtes mais j'aurais pas d, j'ai cherch pendant 30 min mon erreur avant de m'en rendre compte (je suis compltement dbutant dans vb) COMMENTAIRE
DE NAIF02FR LE

22/09/2011 17:24:38

Bonjour, Excellent tuto, grace lui j'avance dans ce domaine alors que j'tais bloqu depuis plusieurs semaines. Je suis un dbutant et...bien souvent je patauge sur des cas probablement simples. Avec le tuto, cela fonctionne toutefois chaque fois que j'ajoute un enregistrement, il crase le premier (la mme chose en modification). Pouvez vous aider un dbutant de...70 ans (Eh oui on apprend tout ge!!!!!) meri pour votre aide COMMENTAIRE
DE

MAYZZ

LE

22/09/2011 21:09:10

La question t voque plusieurs fois. Lors de la compilation VS place le programme dans le rpertoire Bin/Debug (ou release) et y fait galement une copie de la base qui se trouve dans le rpertoire du projet (celle visible depuis l'explorateur de solution) si celle-ci est modifi depuis la dernire copie. Donc les donnes se trouve dans la copie de la base et non dans l'originale. Lors de la modification de la base originale VS refait

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

une copie qui crase la base existante ce qui pour effet de supprimer les donnes. Pour viter cela, il faut travailler avec une seule base en changeant la chane de connexion (spcifier un chemin de base) ou supprimer l'option qui remplace la base en cas de modification, mais cette seconde mthode peut provoquer des erreurs si la base ne comporte pas tous les lment (non jour) . COMMENTAIRE
DE

SHAEGAL

LE

23/09/2011 09:22:00

Bonjour Mayzz, Peut-tre ma question est-elle hors sujet, mais pour des besoins professionnels, j'ai besoin de travailler sur une base Oracle. Or, je travaille sous VB 2010 Express car la version complte est trop chre pour mon employeur. Seulement, je ne trouve pas l'IDE pour Oracle (qui existe bien dans la version complte). Ca rend le travail beaucoup plus simple et on peut voir les tables. Bien que j'ai dj install quelques fichiers, sais-tu s'il est possible de l'installer pour VB 2010 Express et, si oui, quels fichiers tlcharger? Car l'IDE n'apparat toujours pas. Merci d'avance... COMMENTAIRE
DE NAIF02FR LE

23/09/2011 16:51:02

Bonjour Mayzz Meri pour ta rponse rapide mais malgr cela, je n'y arrive pas. J'ai bien ma base dans le rpertoire de travail. Effectivement, j'ai une base dans le rpertoire "Bin". En permuttant (copier/coller) je vois bien que le nouvel enregistrement y figure mais nanmoins, un enregistrement a t effac: j'ai 218 enregistrements et j'ai toujours 218 enregistrements donc: 1 en plus mais 1 en moins. Ou trouve t on "la chaine de connexion" Excusez mon insistance mais je souhaite vivement m'en sortir meri pour votre aide COMMENTAIRE
DE NAIF02FR LE

01/10/2011 11:29:55

Bonjour, J'ai trouv les rponses mes problmes: sur le site et chez Microsoft. Encore meri Mayzz pour son formidable tuto.

COMMENTAIRE

DE STAN176 LE

19/10/2011 13:12:42

Tout d'abord un grand merci pour ce tuto, tant dbutant en .NET j'ai fais des recherche sur des cours qui puissent expliquer l'accs une base de donnes.Peut tre que je ne suis pas dou mais j'ai prouv de grosses difficults mettre en pratique la thorie. Par contre avec un TP la tout s'claire et permet de comprendre le fonctionnement pas pas. Maintenant je sais rechercher et crire dans une base de donnes. Ma question cependant et dont je ne trouve pas la rponse et la suivante: Comment procder lorsqu'on veut que la base de donnes soit externe (un autre ordinateur sur le rseau local par exemple) Je vois dj tout les puristes me dire "Google est ton amis ou utilises la fonction recherche" et croyez moi je l'ai fait. Si quelqu'un un peu de temps pour m'expliquer. Merci. COMMENTAIRE
DE INFROMATIQUE25 LE

02/11/2011 23:14:10

bonjour je vous remercie mayyz pour les dtails prsent, seulement j'ai une petite demande: je travail sur les services web ou mon service web est responsable de la gestion des stocks donc j'ai besoin d'ulitiser une base de donnes, de l'interroger, aussi elle est publie sur un serveur du rseau intranet ou internet je suis dbutante avec le VB.NET et je travaille avec visuel studio 2008. j'ai besoin de votre aide et des orientations pour ne pas se perdre merci d'avance COMMENTAIRE
DE

CHAULIAC

LE

13/11/2011 18:38:54

Bonjour ,votre tuto est bien fait surtout pour les novices. J'aimerai savoir pour quelles raison lorsque je slectione un contact dans le navigator il ne s'affiche pas dans les texbox de proprit du contact.Seule la premire ligne y es inscrite. Merci l'avance de la rponse. Chauliac COMMENTAIRE
DE

MAYZZ

LE

13/11/2011 19:53:11

Bonjour, Ici ce sont les commentaires sur le tutoriel. Pour obtenir de l'aide, merci de poser une question sur le forum.

COMMENTAIRE

DE

MAYZZ

LE

17/11/2011 14:57:18

Salut, 1\Lis ce que j'ai post plus haut c'est valable pour tout le monde. 2\Si tu as une erreur c'est que tu t'es tromp et que tu n'as pas suivis le tuto correctement. 3\Si tu ne tiens pas tre pourri par le SPAM, ne balance JAMAIS ton adresse email en dur sur internet. Je te conseille donc de prendre contact avec un admin et demander la rectification de ton post. COMMENTAIRE
DE ABLO2SYLLA LE

17/11/2011 16:46:32

Ok merci beaucoup pour on conseil. Pour un exercice, je vais encore reprendre pas a pas le tuto. Je vous tiendrai informer de la suite. une fois encore merci COMMENTAIRE 19/11/2011 09:23:14

DE BISNN LE

Super tuto! Sans ce dernier j'aurais srement pass des heures a comprendre l'utilisation de BDD dans VS qui est quand mme, il faut bien le dire, un cliquodrome norme... ^^

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Par contre... Je bute sur un dtail... Lorsque l'on utilise la commande UPDATE, comment faire pour ne mettre jour que l'une des donnes? par exemple ne changer que le nom en conservant les autres valeurs, je prcise que au moment de l'update je suis sur une autre forme, sans le formulaire... J'ai bien essay de remplacer les autres valeurs par "nothing" mais videmment il efface alors les anciennes valeurs... En SQL "pur" l'utiliserais un SET WHERE mais la je suis perdu :/ J'espre que ma question n'est pas idiote, j'ai bien lu le tuto mais la je bloque ou alors je passe a ct d'un dtail tout con?? ... Dans tous les cas merci beaucoup. COMMENTAIRE
DE BISNN LE

19/11/2011 09:43:37

Je me rponds... Il faut crer de nouvelles requtes SQL adaptes dans le DataSet et les utilises: ContactsTableAdapter.UpdateNouvelleRequeteCre(Nom,ID) C'est tout con mais faut le savoir, surtout lorsque l'on vient, comme moi, d'autres IDE que VS, ce genre de chose ce fait habituellement par le code, bien que srement faisable ici aussi... :/ COMMENTAIRE
DE BISNN LE

19/11/2011 21:01:24

j'ai une query "select from" dans mon dataset et je voudrais remplir une listbox avec... et la je sche vraiment :/

COMMENTAIRE

DE ABLO2SYLLA LE

20/11/2011 03:56:00

Une fois encore Grand respect vous Mr Mayzz pour ce tuto. Je suis en fin parvenu m'en sortir. Tout de mme, j'ai un autre problme. Je voudrais essayer ce tuto avec cette fois-ci la base de donnes MySQL. Mais je reois une erreur au niveau de l'ajout d'une base de donnes locale mon projet en suivant ceci : . Clic sur le menu Projet . Clic sur Ajouter un nouvel lment . Base de donnes locale . J'ai donn un nom ma base MyLocalDB Dans la fenetre qui s'ouvre (Data Source Configuration Wizard), je reois l'erreur suivante : An error occurred zhile retrieving the information from the database : the event log file is full. et, le champ Data Set Name n'est pas disponible pour la saisie. Que faire alors? Je demande un coup de main SVP COMMENTAIRE
DE BISNN LE

20/11/2011 04:38:35

Une dernire question... En reprenant ce tuto admettons que je veuilles dfinir une deuxime adresses un contact existant, sans pour autant supprimer la premire, comment cela se passe t'il?

COMMENTAIRE

DE ABLO2SYLLA LE

20/11/2011 15:32:15

Hehe J'ai retrouv la reponse. "Event log" est un truc de windows et non de VB. Pour ceux ou celles qui rencontrera le mme problme, allez dans Panneau de configuration --> Outils d'administration et d'ouvrir l'applet Observateur d'vnements --> supprimer le contenu "Application", "System" --> sauver les fichiers sur un disque au besoin. En suite vous pouvez en fin changer la proprit de "Application", "System" --> click droit -> Prorit --> Modifier la valeur de "Maximum log size" puis valider la modification par appliquer puis OK. haha - la patience est l'art des hommes forts. - avoir le gout de rechercher s'est s'atteler apprendre chaque instant et se mettre jour Une fois de plus merci Mr Mayzz pour ce tuto qui me donne le courage de m'initier avec VB. COMMENTAIRE
DE MALOUKA2012 LE

15/02/2012 13:21:02

Bonjour, Lorsque j'excute la requte tableadapter.insert , aucune erreur n'est gnre, mais la base de donnes n'est pas modifie. Quelqu'un peut-il m'indiquer quel est le problme ? COMMENTAIRE FOUADDRAGOUN 09/03/2012 02:43:23

DE

LE

je veux ajouter un nouveau enregistrement pour un employe deja avoir en la base de donne access & interface en vb 2010,please pouvez-vous m'aider mon adress ( F_oua_d@hotmail.Fr )

COMMENTAIRE

DE NAIF02FR LE

05/04/2012 14:06:03

Bonjour, La base du tuto fonctionne parfaitement dans mon application. Toutefois, je souhaiterai savoir comment l'utiliser pour faire des "fusion" ou publipostage avec Word 2007. Ainsi, partir de word je rcuprerai les donnes de la base qui serai continuellement jour au niveau des inscriptions. Merci COMMENTAIRE
DE HZGBR LE

21/04/2012 20:56:30

merci bien admin :) vraiment ce tutoriel m'expliqu bien qq truc (y)

COMMENTAIRE

DE CHOUCHACHAIMOUTA LE

29/04/2012 21:53:06

Bonjour merci bien pour ce tuto mais malheureusement j'ai deux problmes le premier est "Argument non spcifi pour me paramtre 'Age' de 'Public Overridable Overloads Function Insert( ID As System.Guid,Nom As

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

String, Prenom As String, Age As Short?') As Interger" . Le deuxime est le suivant: "impossible de convertir une valeur de type 'string' en 'System.Guid'" est ce que vous pouvez m'aider et merci COMMENTAIRE 08/05/2012 20:26:20

DE EFFDE LE

Bonjour, Merci pour ce tuto de qualit et trs didacticiel. Je voudrais savoir quelle serait la solution pour vider une table de tous ses enregistrements en une seule fois,faut il faire une boucle avec l'instruction: "Dim NbLine As Integer = ContactsTableAdapter.Delete(ID)" ou existe il une solution mieux adapte? Cordialement. COMMENTAIRE
DE

MAYZZ

LE

08/05/2012 22:09:38

Bonjour, J'ai fais ce tutoriel pour les dbutants. Tout fonctionne parfaitement. Vous pouvez tlcharger la source du programme final (lien au dbut de page). Si vous rencontrez une erreur c'est que vous vous tes tromp un moment donn. Relisez correctement et prenez le temps de comprendre ce qui ne vas pas. Vu le nombre de personne qui font ce tuto je ne peux pas rpondre personnellement chacun pour les aider dans leurs petits problmes. Prendre le temps de lire, comprendre et dboguer votre programme est une tape essentielle qui vous permettra de progresser dans votre apprentissage. Mayzz. COMMENTAIRE
DE HOMER73 LE

11/05/2012 15:03:53

Super tuto!! j'en ai appris beaucoup! par contre j'ai tout suivi mais mon soucis est que mon datagriview ne se charge pas! je n'ai pas d'erreur d'indiqus, ma table contient 2 lignes que je vois dans VS mais rien dans le DGV. Si quelqu'un a une ide... Je sche complet! Merci pour vos rponses et merci pour ce tuto!

COMMENTAIRE

DE

LINDO24

LE

01/06/2012 14:14:28

Merci pour ce super tuto! J'ai par contre toujours un petit soucis, j'ai fait un programme quivalent celui-ci mais quand je veux mettre jour la premire ligne de mon datagridview il m'indique une erreur sur la ligne: Dim ID As Guid = CType(DGV.SelectedRows(0).Cells(0).Value, Guid) L'erreur est ArgumentOutOfRangeException Y a t-il un moyen pour viter cela?? Par contre pour toutes les autres lignes cela fonctionne. Merci COMMENTAIRE
DE DEATHCULT LE

19/06/2012 16:10:40

Merci super tuto, un travaille norme de rdaction.

Ajouter un commentaire
Etre averti par email lorsqu'un nouveau commentaire est ajout sur cette source Donner une note ce tutoriel :

Pour valider votre note, veuillez saisir un commentaire et valider en appuyant sur le bouton "Ajouter votre commentaire" Votre commentaire :

J'approuve la charte de bonne conduite.

Voir la charte de bonne conduite

Ajouter votre commentaire

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE, Tutoriel N1133,

Codes en rapport avec GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE si cette page ne contient pas votre bonheur
Code Visual basic Tous les langages Tutoriels Forum Livres Groups Logiciels Boutique

[.net3] sql connector - grer les connexions sql server au sein de vos applications
Sql connector est un bote de dialogue permettant une gestion par l'utilisateur des chanes de connexion vers sql server (un peu comme le fait visual studio lors d'une connexion au donnes). une fois ...
http://www.vbfrance.com/codes/NET3-SQL-CONNECTOR-GERER-CONNEXIONS-SQL-SERVER-SEIN_50461.aspx

[tuto] gestion des donnes via sql ce


Bonjour tous, cette application est issue du programme exemple d'un tutoriel disponible ici => http://www.vbfrance.com/tutoriaux/gestion-donnees-visual-basic-2008-sql-server_1133.aspx. c'est ...
http://www.vbfrance.com/codes/TUTO-GESTION-DONNEES-VIA-SQL_51905.aspx

Carnet.net v2 avec base de donne sql server


Mme principe que ma prcdente source : carnet.net v1 avec base de donne sql server, mais cette fois ci avec gestion du app.config et une classe regroupant tout pour grer les donnes sql server (i...
http://www.vbfrance.com/codes/CARNET-NET-V2-AVEC-BASE-DONNEE-SQL-SERVER_27960.aspx

Explorateur de fichier
Ben c'est un petit explorateur de fichier windows, c'est le premier code que je fait entierement tout seul et qui peut servir a quelque chose et a d'autre personne... c'est un code simple qui pourrait...
http://www.vbfrance.com/codes/EXPLORATEUR-FICHIER_7582.aspx

Exemple de synchro multi-thread (dbutant)


Aprs avoir longtemps cherch des exemples sur le net concernant le multithread et n'ayant rien trouv d'accessible , clair et en franais, je me suis rsolu publier le petit bricolage que j'ai r...
http://www.vbfrance.com/codes/EXEMPLE-SYNCHRO-MULTI-THREAD-DEBUTANT_48108.aspx

+ de ressources pour GESTION DES DONNES VISUAL BASIC 2008 ET SQL SERVER CE

Dveloppement ralis par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci Vincent pour ses prcieux conseils. CodeS-SourceS.com Toute reproduction mme partielle est interdite sauf accord crit du Webmaster CodeS-SourceS.com est une marque dpose tous droits rservs

Temps d'xcution de la page : 1,466 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions lgales Outils Convertisseur VB/C# Snippets et scripts Outils en ligne La ToolBox Communaut Programmation Photographie Technologie Newsgroups Emploi Forum Blogs Guide d'achat Tlphonie mobile Image et son Informatique Bureautique Jeux vido Logiciels Internet & Rseau Dveloppement Market Android Jeux & Loisirs Graphisme Multimdia Scurit Pilotes Loisirs Cartes virtuelles Vidos droles Jeux en ligne Goguide AndroLib (Android Market)

file:///C|/Users/MSAADANI/Videos/Tlchargements%20RealPlayer/Formation%20SQL/Sql%20Server%202008/GESTION-DONNEES-VISUAL-BASIC-2008-SQL-SERVER_1133.aspx.htm[19/07/2012 15:12:33]

Vous aimerez peut-être aussi