HOME  QUICKSTART   TELECHARGEMENT  CONTACT  

QUICKSTART

 
Ce petit tutorial a pour objectif d'expliquer comment utiliser Denki-SQL.
Toute autre documentation étant pour le moment inexistante (beta oblige), ce tutorial est la seule explication... Mais l'utilisation de Denki-SQL n'est pas très compliquée...
Ce tutorial se divise en deux parties, mais la deuxième partie n'est pas obligatoire, c'est juste pour aller un peu plus loin...
Pour commencer il faut bien entendu avoir un minimum de logiciels et de connaissances voici la liste:
 
 
PRE-REQUIS
Avant de commencer, il est nécessaire d'avoir installer:
  • Le Framework.NET 2 ou 3...
  • Visual Studio 2005
  • SQL Server 2000 ou 2005 (client+serveur)
  • Denki-SQL
Et il est nécessaire de savoir:
  • Créer une nouvelle base de données
  • Avoir une expérience du language T-SQL
  • Avoir une expérience d'un language .NET
  • Pourquoi vous lisez tout ceci maintenant et pourquoi ;)
 
 
Ensuite, pour créer notre base exemple:
  • Ouvrez votre manager SQL Server (client)
  • Créer une nouvelle base de données nommée MyBookStore
  • Exécutez-y ce script (tables + relations + données)
Ce qui devrait nous donner un schéma comme ceci :
 
 
Je suis désolé pour la piètre qualité de ma base exemple, je ferai mieux plus tard ;)
 
Prêt ? choisissez le "CASE STUDY 1" pour commencer.
 
 
CASE STUDY 1
  • Création d'un nouveau scénario "Denki"
  • Sauvegarde d'un scénario "Denki"
  • Génération "Denki", et application des codes
  • "Simple SELECT"
  • "Simple INSERT"
  • "Simple UPDATE"
  • "Simple DELETE"
Estimation: 10 min.
 
Go
 
 
CASE STUDY 2
  • Ouverture d'un scénario "Denki" existant
  • Ajout d'une ascendance et d'un filtre
  • Génération "Denki", et application des codes
  • "SELECT imbriqué"
  • "UPDATE imbriqué"
  • "DELETE imbriqué"
  • "SELECT étendu"
Estimation: 10 min.
 
Go
 
 
 

CASE STUDY 1

 
Dans cette première situation, nous allons explorer les tâches les plus basiques de Denki-SQL.
1) Création d'un nouveau scénario "Denki"
  • Démarrer Denki-SQL.
  • Dans le menu fichier "Fichier", choisissez "Nouveau".
  • Paramétrez votre connexion SQL et cliquez sur "Se connecter".
  • Dans la liste des catalogues disponibles choisissez "MyBookStore" et cliquez sur "Analyser".
  • Cliquez sur "OK" pour valider.
 
Vous pouvez déployer le treeview pour visiter, mais cela n'a pas utile dans notre exemple.
2) Sauvegarde d'un scénario "Denki"
Une des particularités de "Denki" est que vous pouvez sauvegarder votre scénario (au format XML), pour pouvoir le modifier plus tard...
  • Dans le menu fichier "Fichier", choisissez "Enregistrer sous".
  • Choisissez votre emplacement, votre nom de fichier, puis cliquez sur "Enregistrer".
 
3) Génération "Denki", et application des codes
Maintenant nous allons sortir la baguette magique...
  • Dans le menu fichier "Fichier", choisissez "Générer le code".
  • Choisissez une destination et cliquez sur "Générer" (un sous-dossier sera créer automatiquement).
A ce stade, deux sous-dossiers apparaissent sous vos yeux, "SQL" et "VB.NET" (ou "C#")
  • Dans le dossier "SQL" vous trouverez un script SQL, exécutez-le directement dans votre base exemple (pour créer les procédures stockées).
  • Dans le dossier "VB.NET" (ou "C#") vous trouvez un dossier contenant quelques fichiers (un par table), gardez les en vue, nous allons les utiliser par la suite.
Maintenant nous allons créer un projet Winform pour tester tout cela...
  • Démarrez Visual Studio 2005 et créer un nouveau projet "Application Windows".
  • Faites un "copier/coller" du dossier "MyDataClass" contenu dans le dossier "VB.NET" ou ("C#") précédemment généré dans la racine de votre nouveau projet.
  • Agrandissez le formulaire (ref. "Form1.vb" ou "Form1.cs") et glissez-y un object "DataGridView" et un object "button".
 
4) "Simple SELECT"
  • Double-cliquez sur le bouton "button1" pour accrocher l'événement "click".
  • Insérez ce code (remplacez le string connexion par le votre):
 
VB.NET C#
 
 
' Indiquez ici votre string de connexion.
Dim MyConnString As String = "Initial Catalog=MyBookStore; Data Source={yourServerName}; Integrated Security=False; User ID={yourLogin}; Password={yourPassword}"  
 
' Initialisation d'une nouvelle instance de notre classe de sélection "Books"
Dim FdCls As New MyDataClass.Books.spS(MyConnString)

' On place un filtre pour chercher les livres à 12 euros
FdCls.Filters.book_price.Value = 12
' A la place de ce filtre on aurait pu mettre
' FdCls.Filters.book_price.IncludedFrom = 12
' pour choisir tous les livres supérieurs ou égales à douze euros...
' On pourrait aussi combiner d'autre filtres d'autres filtres....

' On exécute le tout...sélection
FdCls.Execute()

' On ferme la connexion
FdCls.Disconnect()

' On applique le résultat dans notre DataGridView
DataGridView1.DataSource = FdCls.Results.Table
 
  • Générez votre application.
  • Cliquez sur le bouton.
  • Si tout se passe bien, votre datagridview affiche le seul livre à douze euros !
Vous venez d'exécuter une procédure stockée avec trois lignes de code en tout !
 
5) "Simple INSERT"
  • Entrez dans votre projet Visual Studio
  • Double-cliquez sur le bouton "button1" pour accrocher l'événement "click".
  • Remplacez le code existant par celui-ci:
 
VB.NET C#
 
 
' Indiquez ici votre string de connexion.
Dim MyConnString As String = "Initial Catalog=MyBookStore; Data Source={yourServerName}; Integrated Security=False; User ID={yourLogin}; Password={yourPassword}"
 
' Initialisation d'une nouvelle instance de notre classe d'insertion "Books"
Dim FdCls As New MyDataClass.Books.spI(MyConnString)

' On prépare une nouvelle ligne
FdCls.Values.book_price.Value = 14
FdCls.Values.book_title.Value = "Mon Livre"
 
' On exécute le tout...insertion
FdCls.Execute()

' On ferme la connexion
FdCls.Disconnect()
 
  • Générez votre application.
  • Cliquez sur le bouton.
  • Si tout se passe bien, vous venez d'insérer un nouveau livre nommé "Mon livre" à 14 euros dans votre base !
 
6) "Simple UPDATE"
  • Entrez dans votre projet Visual Studio
  • Double-cliquez sur le bouton "button1" pour accrocher l'événement "click".
  • Remplacez le code existant par celui-ci:
 
VB.NET C#
 
 
' Indiquez ici votre string de connexion.
string MyConnString = "Initial Catalog=MyBookStore; Data Source={yourServerName}; Integrated Security=False; User ID={yourLogin}; Password={yourPassword}";
 
' Initialisation d'une nouvelle instance de notre classe de mise à jour "Books"
Dim FdCls As New MyDataClass.Books.spU(MyConnString)

' On choisi un notre livre
FdCls.Filters.book_title.Value = "Mon Livre"

' On lui prépare une mise à jour à 15 euros
FdCls.Values.book_price.Value = 15

 
' On exécute le tout...mise à jour
FdCls.Execute()

' On ferme la connexion
FdCls.Disconnect()
 
  • Générez votre application.
  • Cliquez sur le bouton.
  • Si tout se passe bien, vous venez de mettre à jour votre livre nommé "Mon livre" de 14 à 15 euros !
 
7) "Simple DELETE"
  • Entrez dans votre projet Visual Studio
  • Double-cliquez sur le bouton "button1" pour accrocher l'événement "click".
  • Remplacez le code existant par celui-ci:
 
VB.NET C#
 
 
' Indiquez ici votre string de connexion.
Dim MyConnString As String = "Initial Catalog=MyBookStore; Data Source={yourServerName}; Integrated Security=False; User ID={yourLogin}; Password={yourPassword}"
 
' Initialisation d'une nouvelle instance de notre classe de suppression "Books"
Dim FdCls As New MyDataClass.Books.spD(MyConnString)

' On choisi un notre livre
FdCls.Filters.book_title.Value = "Mon Livre"
 
' On exécute le tout...suppresion
FdCls.Execute()

' On ferme la connexion
FdCls.Disconnect()
 
  • Générez votre application.
  • Cliquez sur le bouton.
  • Si tout se passe bien, vous venez de supprimer votre livre nommé "Mon livre"
 

CASE STUDY 2

 
Dans cette deuxième situation, nous allons explorer les tâches les plus élaborées de Denki-SQL, à savoir celles basées sur l'imbrication.
1) Ouverture d'un scénario "Denki" existant
  • Démarrer Denki-SQL.
  • Dans le menu "Fichier", choisissez "Ouvrir".
  • Choisissez votre scenario précédemment sauvegardé (STUDY CASE 1) et cliquez sur "Ouvrir".
 
A présent nous allons placer un filtre sur une table ascendante à la table "Books"..
2) Ajout d'une ascendance et d'un filtre
  • Ouvrez le nœud de la table "Books".
  • Ouvrez le nœud enfant "Programmation".
  • Effectuez un click droit sur le nœud "Ascendance" et sélectionnez "Ajouter une ascendance".
  • Assurez-vous que la contrainte "FK_Books_Authors" est sélectionnée (c'est la seule table parente de l'example) puis cliquez sur "Créer".
  • Ouvrez le nouveau nœud enfant "Authors".
  • Ouvrez le nœud enfant "Programmation".
  • Effectuez un click droit sur le nœud "Filtres" et sélectionnez "Ajouter un filtre".
  • Choisissez la colonne "author_name" et cliquez sur "Ajouter".
 
3) Génération "Denki", et application des codes
Maintenant nous allons sortir la baguette magique...
  • Dans le menu fichier "Fichier", choisissez "Générer le code".
  • Choisissez une destination et cliquez sur "Générer" (un sous-dossier sera créer automatiquement).
A ce stade, deux sous-dossiers apparaissent sous vos yeux, "SQL" et "VB.NET" (ou "C#")
  • Dans le dossier "SQL" vous trouverez un script SQL, exécutez-le directement dans votre base exemple (pour créer les procédures stockées).
  • Dans le dossier "VB.NET" (ou "C#") vous trouvez un dossier contenant quelques fichiers (un par table), gardez les en vue, nous allons les utiliser par la suite.
Maintenant nous allons créer un projet Winform pour tester tout cela...
  • Démarrez Visual Studio 2005 et créer un nouveau projet "Application Windows".
  • Faites un "copier/coller" du dossier "MyDataClass" contenu dans le dossier "VB.NET" ou ("C#") précédemment généré dans la racine de votre nouveau projet.
  • Agrandissez le formulaire (ref. Form1.vb) et glissez-y un object "DataGridView" et un object "button".
 
4) "SELECT imbriqué"
  • Entrez dans votre projet Visual Studio
  • Double-cliquez sur le bouton "button1" pour accrocher l'événement "click".
  • Insérez ce code (remplacez le string connexion par le votre):
 
VB.NET C#
 
 
' Indiquez ici votre string de connexion.
Dim MyConnString As String = "Initial Catalog=MyBookStore; Data Source={yourServerName}; Integrated Security=False; User ID={yourLogin}; Password={yourPassword}"
 
' Initialisation d'une nouvelle instance de notre classe de sélection "Books"
Dim FdCls As New MyDataClass.Books.spS(MyConnString)

' On place un filtre pour chercher tous les livres dont l'auteur est "Erwan Riso"
FdCls.Ascents.Authors.Filters.author_name.Value = "Erwan Riso"
' On pourrait aussi combiner d'autre filtres d'autres tables...

' On exécute le tout...sélection
FdCls.Execute()

' On ferme la connexion
FdCls.Disconnect()

' On applique le résultat dans notre DataGridView
DataGridView1.DataSource = FdCls.Results.Table
 
  • Générez votre application.
  • Cliquez sur le bouton.
  • Si tout se passe bien, votre datagridview affiche les livres de l'auteur demandé !
 
7) "SELECT imbriqué & étendu"
  • Entrez dans votre projet Visual Studio
  • Double-cliquez sur le bouton "button1" pour accrocher l'événement "click".
  • Insérez ce code (remplacez le string connexion par le votre):
 
VB.NET C#
 
 
' Indiquez ici votre string de connexion.
Dim MyConnString As String = "Initial Catalog=MyBookStore; Data Source={yourServerName}; Integrated Security=False; User ID={yourLogin}; Password={yourPassword}"
 
' Initialisation d'une nouvelle instance de notre classe de sélection "Books"
Dim FdCls As New MyDataClass.Books.spSE(MyConnString)

' On place un filtre pour chercher tous les livres dont l'auteur est "Erwan Riso"
FdCls.Ascents.Authors.Filters.author_name.Value = "Erwan Riso"
' On pourrait aussi combiner d'autre filtres d'autres tables...

' On exécute le tout...sélection
FdCls.Execute()

' On ferme la connexion
FdCls.Disconnect()

' On applique le résultat dans notre DataGridView
DataGridView1.DataSource = FdCls.Results.Table
 
  • Générez votre application.
  • Cliquez sur le bouton.
  • Si tout se passe bien, votre datagridview affiche les livres de l'auteur complétés des informations contenues dans les tables parentes !
La différence entre le "select" (spS) et le "select étendu" (spSE) est dans le résultat. Les procédures spSE retourne votre table ciblée + ses tables parentes...
 
5) "UPDATE imbriqué"
  • Entrez dans votre projet Visual Studio
  • Double-cliquez sur le bouton "button1" pour accrocher l'événement "click".
  • Remplacez le code existant par celui-ci:
 
VB.NET C#
 
 
' Indiquez ici votre string de connexion.
Dim MyConnString As String = "Initial Catalog=MyBookStore; Data Source={yourServerName}; Integrated Security=False; User ID={yourLogin}; Password={yourPassword}"
 
' Initialisation d'une nouvelle instance de notre classe de mise à jour "Books"
Dim FdCls As New MyDataClass.Books.spU(MyConnString)

' On choisi un auteur sur la table parente "Erwan Riso"
FdCls.Ascents.Authors.Filters.author_name.Value = "Erwan Riso"


' On va fixer le prix de tout ses livres à 16 euros
FdCls.Values.book_price.Value = 16

 
' On exécute le tout...mise à jour
FdCls.Execute()

' On ferme la connexion
FdCls.Disconnect()
 
  • Générez votre application.
  • Cliquez sur le bouton.
  • Si tout se passe bien, vous venez de mettre à jour tous les livres de l'auteur "Erwan Riso" à 16 euros !
 
6) "DELETE imbriqué"
  • Entrez dans votre projet Visual Studio
  • Double-cliquez sur le bouton "button1" pour accrocher l'événement "click".
  • Remplacez le code existant par celui-ci:
 
VB.NET C#
 
 
' Indiquez ici votre string de connexion.
Dim MyConnString As String = "Initial Catalog=MyBookStore; Data Source={yourServerName}; Integrated Security=False; User ID={yourLogin}; Password={yourPassword}"
 
' Initialisation d'une nouvelle instance de notre classe de suppression "Books"
Dim FdCls As New MyDataClass.Books.spD(MyConnString)

' On choisi un auteur sur la table parente "Erwan Riso"
FdCls.Ascents.Authors.Filters.author_name.Value = "Erwan Riso"


' On exécute le tout...suppresion
FdCls.Execute()

' On ferme la connexion
FdCls.Disconnect()
 
  • Générez votre application.
  • Cliquez sur le bouton.
  • Si tout se passe bien, vous venez de supprimer tous les livres de l'auteur "Erwan Riso"

SPONSORS

{smartassembly}
  Codes SourceS  ASP-PHP.NET  Dotnet-project  Check this page HTML  Check this page CSS 
 
Denki-SQL ©2007 Grégory Dufour (DrTissot) - DrTissot's Blog