Un numéro offert




Recherche :

Eclipse, DTP, Derby et MySQL
IDE

Eclipse Data Tools Platform (DTP) est un ensemble de frameworks et outils pour la création, gestion et utilisation des sources de données (bases de données, fichiers, etc.) d'une façon interactive et centralisée.

Elle permet de travailler avec les bases de données via le langage SQL; création de bases de données, requêtes, mise à jour etc. Via une interface SQL (texte) standard ou maintenant (version 1.6) avec une interface graphique.

Cette plateforme est utilisée par plusieurs distributions d'Eclipse comme WTP, et BIRT

Avoir plusieurs sources de données et non uniquement des bases est un objectif essentiel pour DTP avec l'idée de centraliser des connexions avec les sources de données, permettant une seule définition et de multiple accès dans plusieurs projets Eclipse, à une source de données.

1. Logiciels nécessaires

-Une base de données (ou serveur de base de données) :
Derby, MySQL par exemple

-Une distribution Eclipse avec DTP :
Quelques distributions Eclipse sont équipées en standard de DTP comme par exemple Eclipse for JEE

Ou bien pour une installation Eclipse Standard avec des logiciels supplémentaires :

Eclipse 3.4
EMF & SDO 2.4
GEF 3.4
DTP 1.6

La version de DTP utilisée est DTP 1.6 et la plateforme Eclipse est Eclipse 3.4

Ce tutoriel utilise "Derby" et "MySQL" les deux bases de données sont libres

Note :
Eclipse, Data Tools Plateform et les dépendances sont disponibles sur le site d'Eclipse. http://www.eclipse.org.

2. Utiliser la base de données "Derby"

Derby ou "Apache Derby" est une base de données Java, libre. Diffusée sous licence Apache, cette base de données est livrée en standard avec Java 6.

Les étapes pour configurer et utiliser "Derby" dans Eclipse sont :

1.Trouver "derby.jar" dans le dossier d'installation de Java 6

2.Configurer l'outil de développement bases de données et le driver

3.Utiliser la base de données

3. Rechercher le fichier "derby.jar"

"derby.jar" est livré avec Java 6 :

Dans le Dossier_installation_java_6/db/lib

Astuce :
En lançant une commande "find" sur linux ou en recherchant "derby.jar" dans Windows, on trouve facilement le fichier "derby.jar"

find jdk1.6.0_06-64 -iname "derby.jar"

>>jdk1.6.0_06-64/db/lib/derby.jar

4. Configurer le driver

Dans Eclipse :

Window-> Preferences

5. Driver Definition :

Sélectionner -> "Data Management" -> Connectivity -> Driver Definition->Un clic sur Add

6. Onglet Type/Name

Une boîte de dialogue "new driver definition" s'ouvre
Un clic sur l'onglet Type/Name sélectionner Derby et sa version comme suite :

"Derby Embeded JDBC" 10.2

Note :

Pourquoi Embeded Derby ?

Utiliser Embeded Derby permet la création de bases de données directement dans le système de fichiers (sous forme d'un dossier) sans passer par la configuration du serveur de base de données.

7. Derby Embeded JDBC

Sélectionner comme suite

8. L'onglet "Jar List"

Sélectionner "derby.jar".
Un clic sur le bouton Edit JAR/Zip ouvre l'explorateur des fichiers

Note:
Cette opération est nécessaire uniquement à la première définition du driver. Il n'y aura plus de messages d'erreur par la suite

9. Sélectionner le fichier "derby.jar"

Dans l'explorateur de fichiers-> Sélectionner le chemin vers le fichier "derby.jar" -> OK
(Dossier d'installation de JDK/db/lib/derby.jar

10. derby.jar est ajouté

Le fichier "derby.jar" est ajouté -> Un clic sur OK

Un deuxième clic sur OK pour fermer la fenêtre "Preferences".

11. La perspective Base de données

Un clic sur "Window" -> Open perspective -> Other -> Database Development

12. Création d'une base de données

"Database Perspective" :

Contient un explorateur et des views adaptés pour le travail avec les sources de données et en particulier les bases de données.

Dans "Data Source Explorer" -> sélectionner "Databases" ->un clic droit -> new

Note :
La création d'une base de données passe par la création d'un profile de connexion

13. Le profile de connexion (Connection Profile)

Sélectionner "Derby" -> entrer le nom pour le profile de connexion (au choix) ->un clic sur "Next"

14. New Derby Connection Profile

Un clic sur l'onglet "General" -> un clic sur le bouton "Browse" pour sélectionner un dossier de destination pour la base de données.

Enter un nom d'utilisateur dans "User name" et un mot de passe dans "Password"
(entrées optionnelles).

Ne rien changer dans le champ "URL". Ce champ change automatiquement avec le nom de la base.

Cocher la case "Create Database" et "Connect when the wizard completes"

Note :
Il est possible de se connecter à la base de données à chaque démarrage d'Eclipse -> cocher la case "connect every time the workbench is started"

ATTENTION !!!
En cas de modification du dossier de destination de la base de données avec "Browse", il ne faut surtout pas oublier d'entrer un nom physique pour la base de données, suite au chemin affiché dans la zone de texte "Database Location", sinon problème !!! Eclipse va tenter de créer un dossier "existant" pour sa base de données et va terminer avec des messages d'erreurs.

15. Derby embeded JDBC Driver

1.Le champ "Derby Embedded JDBC Driver", contient ici le driver pour Derby.
2.Il est possible avec "New driver definition" d'entrer les configuration d'un nouveau driver pour la base de données entrée dans l'étape précédente à partir de cette boîte sans être obligé de passer par windows -> Preferences -> "Data Management" -> Connectivity -> Driver Definition.

3.Il est possible de changer les configurations du driver avec "Edit driver definition"

16. Confirmer et créer

Une fenêtre de confirmation avec des options concernant la création de la nouvelle base de données et le profile de connexion sont affichées.

Un clic sur "Finish" pour créer

17. La connexion à la base de données

Une connexion est déjà établie avec la base de données suite à sa création

18. Connexion (en général) à la base de données

Note :
Pour se connecter à une base de données si on n’a pas coché la case connect when the wizard completes, ou au nouveau démarrage d'Eclipse. Un clic droit sur la le profile de connexion dans Database -> connect.

Dans la boîte de dialogue "JDBC Connection Properties" -> Entrer le nom de la base de données avec le chemin dans "Database Location" ou Browse et sélectionner son dossier, Entrer le nom d'utilisateur dans "User Name" et le mot de passe dans "Password"

19. Se déconnecter

Un clic droit sur le profile de la connexion -> Disconnect

20. Création d'une table PERSONNE

Il faut commencer par ouvrir test_derby -> Schemas -> APP.

Sélectionner "Tables" -> un clic droit sur "New Table"

21. Sélectionner les options pour la table

Au minimum "Create statement"

22. Entrer le nom de la table et ajouter des colonnes

1.Entrer le nom de la table

2.Un clic sur "Add column" pour ajouter une colonne

3.La colonne est ajoutée. Donner la un nom

4.Sélectionner la nature de la colonne

5.Entrer la longueur de la colonne, si applicable

Sélectionner si la colonne entrée peut avoir la valeur null ou non et sa valeur par défaut
Note :
On peut ajouter autant de colonnes qu'on le souhait, avec "Add Column"

Note :
Pour effacer une colonne -> sélectionner -> un clic sur "Delete Column"

23. Sélectionner les membres de la clé primaire :

Sélectionner les colonnes membres de la clé primaire, puis un clic sur "Finish"

24. Exécuter le code SQL

Une fenêtre s'ouvre avec le code SQL pour la création de la table s'ouvre

Il suffit de le vérifier -> modifier ou non -> un clic droit -> Execute All

25. Exécution OK

Le code SQL est bien exécuté -> le view "SQL Result" affiche "succuss" et le view "status" affiche le code exécuté

26. La table est ajoutée

Note :
"KAS" est le nom d'utilisateur. La table PERSONNE est ajoutée dans KAS-> Tables

27. Ajouter des données dans la table

Un clic droit sur la table "PERSONNE" -> Data -> Edit

28. Ajouter des données

Un éditeur interactif avec les en-têtes s'ouvre permettant d'ajouter des données dans la table

Pour entrer une valeur -> un clic sur "new row"-> entrer valeur
Le déplacement est aussi possible avec "TAB"

L'entrée de données se termine -> clic droit -> Save pour sauvegarder les données dans la table.

D'autres options :
Sont disponible avec un clic droit dans l'éditeur, comme par exemple l'effacement d'une ligne

29. Explorateur de données (Data Source Explorer, DSE)

Permet d'avoir une vue global des connections, bases de données, tables, colonnes etc.

30. Explorateur de données (Data Source Explorer, DSE) suite

A part connect et disconnect d'autres options sont disponibles avec un clic droit sur un profile de connexion :

Rename Renommer le profile sélectionné
Delete Effacer le profile sélectionné
Ping Permet de tester le profile sélectionné et la connexion
Properties Permet de modifier les paramètres du profile

Refresh Actualiser la vue

Duplicate Dupliquer le profile

SaveOffline et Offline Sauvegarder et travailler hors ligne

31. Exporter un profile de connexion :

Il est possible dans l'explorateur de données d'exporter un profile de connexion dans un fichier xml et pouvoir l'utiliser par la suite en l'important dans l'explorateur de données sur une autre plateforme Eclipse par exemple.

Un clic sur le bouton "Export"

Dans la boîte de dialogue "Export Connection Profiles"
Cocher le/les profiles à exporter
Entrer le nom d'un fichier de destination dans "Specify a file name"

Cocher "Encrypt file content" pour crypter le fichier de destination

Un clic sur OK

Note : Pour utiliser Browse, il n'est pas possible de naviguer et sélectionner un dossier et entrer un nom de fichier par la suite. Il faut vraiment naviguer et sélectionner un fichier

32. Importer un profile de connexion :

De la même manière que exporter il est possible d'importer un profile de connexion sauvegardé dans un fichier

Un clic sur le bouton "Import"

Entrer le nom du fichier profile ou "Browse"

Laisser décocher "Overwrite existing connection profiles with the same name" pour n'est pas écraser un profile pourtant le même nom

Un clic sur "OK"

33. Commandes et requêtes en pure SQL

Pour entrer des requête en SQL il y a deux possibilités :

-Création d'un fichier SQL (SQL File) voir plus loin

-Utiliser "SQL Scrapbook"

34. Utiliser SQL Scrapbook

Un clic sur le bouton "SQL Scrapbook" ouvre un éditeur pour SQL à la même manière de "Scrapbook Page" pour Java

35. Entrer SQL

Entrer des commandes en SQL -> un clic droit dans l'éditeur -> Exécute ALL

Le "SQL Resultat" affiche la réussite ou l'échec de l'opération.

Le résultat de la requête est affiché dans "Result"

36. L'assistant SQL

Dans l'éditeur de "SQL scrapbook" un assistant SQL est prêt à proposer d'insérer des commandes SQL, nom des tables, etc.

CTRL+Espace

37. Des requêtes SQL interactives

SQL Query Builder, un composant de DTP, est un éditeur graphique SQL permettant de construire des requêtes SQL complexes ; création, édition et exécution.

Ses options changent selon la commande SQL en cours (par défaut select). Après la construction d'une requête un clic sur "OK" ferme "SQL Query Builder" et la requête est récupérée dans l'éditeur qui a lancé "SQL Query Builder" (fichier SQL, ou SQL Scrapbook)

Pour lancer "SQL Query Builder" (plusieurs façons sont possibles) -> Un clic droit à l'intérieur de "SQL Scrapbook" -> "Edit in SQL Query Builder" ou "ALT+Q"

Un clic droit à partir d'un fichier SQL (SQL File) -> "Edit in SQL Query Builder" ou "ALT+Q"

Ou bien un clic droit sur un fichier "SQL" (SQL File) -> Open with -> SQL Query Builder
Dans ce dernier cas "SQL Query Editor" est ouvert dans un éditeur séparé, qu'il est possible d'enregistrer. Mais on perd la possibilité de récupération de la requête.

38. SQL Query Builder

Suite

39. La fenêtre SQL Query Builder

Est composée de plusieurs parties :

1.Un éditeur SQL

2.Une partie pour ajouter et travailler graphiquement avec des tables

3.Une partie pour modifier des requêtes : select, insert, delete, etc

4.Une partie pour les compositions de requêtes complexe avec la partie 2

5.Un onglet pour l'affichage des résultats ou retourner à l'éditeur

40. L'éditeur de SQL Query Builder

Est un éditeur permettant d'entrer des requêtes SQL

Il dispose d'un assistant d'édition, disponible avec CTRL+ESPACE

Un autre assistant très intéressant disponible avec CTRL+SHIFT+ESPACE permettant d'avoir un exemple pour le type de la requête en cours
Pour exécuter une commande SQL -> clic droit dans l'éditeur et "Run SQL"

41. Exemple INSERT

Dans l'éditeur de "SQL Query Builder" -> sélectionner "select" dans la requête SQL -> clic droit -> "Change Statement Type" -> sélectionner "INSERT" dans la liste -> OK

Ou dans la partie 3 -> sélectionner "Select statement" -> clic droit -> "Change Statement Type" -> sélectionner "INSERT" dans la liste -> OK

42. Ajouter une table

Ajouter une table dans la partie des table -> un clic droit -> Add table -> sélectionner la table à ajouter -> OK

43. Sélectionner les colonnes engagés dans INSERT

Cocher par exemple la case "ID" dans la table PERSONNE (section tables).

Automatiquement la commande insert comporte maintenant "(ID)" dans l'éditeur et dans la partie colonnes (partie 4). La valeur "values" est mise à zéro.

Un autre moyen de sélectionner un champ est de cliquer sur la partie colonnes et sélectionner un champs.

Une troisième possibilité est d'entrer suite à l'insert dans l'éditeur "(ID)" et "0" après values

Note :
Les parties éditeur, table et colonne sont liées. Un changement dans une partie entraine le changement automatique des deux autres.

Note :
Pour sélectionner tous les champs -> commencer par sélectionner la table dans la partie "Table" -> Un clic sur table-> sur la table sélectionnée -> un clic droit
-> Select All Columns

44. Entrer une valeur pour le champ

Deux moyens sont possibles :

-Dans l'éditeur

-Dans la partie colonnes -> un clic dans la partie value -> Entrer valeur

45. Exécuter une requête

Un clic droit dans l'éditeur -> Run SQL

46. Le résultat de la requête est affiché

Dans la fenêtre "SQL Results" la requête complète est affichée avec le résultat : succès ou échec

47. Ajouter des conditions dans une requête

Pour une requête "delete" par exemple on procède de la même manière que dans "insert" et on peut aussi ajouter des conditions pour l'exécution de la requête

Dans la partie colonnes -> un clic directement sous le titre "Operator" sélectionner un opérateur parmi ceux proposés dans la liste d'opérateur.

On peut jouer aussi sur la valeur avec "Value" et sur des opérateurs AND et OR

Note :
Les requêtes avec les autres commandes SQL se construisent de la même manière et mêmes les requêtes les plus complexes.

48. Utiliser les possibilités de DTP dans un projet Eclipse

Il est possible d'utiliser des possibilités offertes par DTP dans un projet Eclipse, comme par exemple un projet Java

Note :
Il est bien sûr possible d'utiliser DTP dans d'autres projets Eclipse, comme par exemple, un projet ressource, un projet Java, des projet d'autres langages etc. Java ici n'est qu'un exemple de projets.

49. Créer un projet Java

File -> New -> Projet -> Java -> Java Project -> Next

50. Donner un nom au projet

Entrer le nom du projet dans "Project name" Un clic sur "Finish" -> Un message pour Java perspective est affiché -> OK

51. Création d'un SQL file dans le projet

Pour créer un fichier SQL (SQL File) -> un clic droit sur le projet que nous venons de créer -> New -> Other -> SQL Development -> SQL File -> Next

Ou

File -> New -> SQL File

52. Sélectionner le projet Java

Sélectionner le nom du projet.

Entrer le nom du fichier SQL à créer dans "File Name"

Sélectionner le serveur de bases de données dans "Database server type"

Sélectionner le profile de la connexion créer précédemment dans "Connection profile name"

Sélectionner la base de données avec "Database name"

Un clic sur "Finish"

53. Le fichier SQL est ouvert et prêt pour les requêtes

Le fichier SQL (SQL File) permet à partir d'un projet Eclipse, d'éditer, modifier, et de tester des requêtes. Il permet aussi de lancer "SQL Query Builder", l'interface graphique d'édition. Sauvegarder ce fichier permet d'avoir des requêtes SQL dans le même projet pour une utilisation ultérieure ou dans d'autres projets Eclipse.

Entrer une requête dans l'éditeur.

L'assistant est disponible avec CTRL+ESPACE

Pour exécuter une seule requête -> sélectionner la requête -> clic droit ->"Execute Selected Text" ou ALT+X

Pour exécuter l'ensemble de code dans l'éditeur -> clic droit -> "Execute ALL" ou CTRL+ALT+X

Un clic droit -> set connection Info permet de modifier le profile de connexion
ou de le spécifier -> en l'absence d'une connexion.

Pour entrer un commentaire -> le curseur à l'endroit pour placer le commentaire clic droit -> Toggle comment

Note :
Il faut avoir une connexion ouverte pour que l'éditeur fonctionne.

54. Fichier SQL suite

Il est possible d'entrer directement un morceau de code comme template, avec un clic droit dans l'éditeur -> Save as template. Personnaliser le template avec un nom et des variables -> un clic sur "OK"

55. Continuer dans le projet Java

Il est possible de lancer SQL Query Builder à partir du fichier SQL
Avec un clic droit -> Editer dans SQL Query Builder

Il est aussi possible de changer de perspective. Comme "Database Development Perspective" et lancer un éditeur "SQL Scrapbook" ou utiliser un "SQL Scrapbook" existant

56. DTP et MySQL

MySQL est un serveur de base de données libre et sous licence GPL
Le nom de MySQL brille dans le monde de libre et n'a pas besoin d'autres descriptions.

MySQL Connector/J est le driver JDBC (type 4) officiel de MySQL et téléchargeable sur le site de MySQL sous forme d'un fichier *gz ou *zip. La version actuelle est 5.1

Les étapes pour se connecter à MySQL sont:

1.Télécharger le driver MySQL Connector/J sur le site de MySQL

2.Décompresser le fichier (zip ou gz) dans un dossier au choix
un dossier mysql-connector-java-5.1.6 est créé

3.Sélectionner le driver MySQL Connector/J dans "Driver definition"

4.Créer une base de données sur le serveur MySQL

5.Définir un profile de connexion avec MySQL et le driver de MySQL

6.Utiliser la connexion

57. Window -> Preferences

Dans Eclipse -> Window -> Preferences

58. Driver Definions :

Sélectionner "Data Management" -> "Connectivity" -> "Driver Definitions" -> un clic sur le bouton "Add"

59. Sélectionner le driver JDBC MySQL

Dans l'onglet "Name/Type" -> Sélectionner MySQL JDBC Driver et la version 5.1

Note :
La version du driver est différente si la version de MySQL utilisée est différente

60. Onglet Jar List

Un clic sur l'onglet "Jar List".
Le message d'erreur indique que le driver n'est pas trouvé
Un clic sur "mysql-connector-java-5.1.0-bin.jar
Un clic sur le bouton "Edit JAR/Zip"
Avec l'explorateur de fichiers sélectionner le fichier

"mysql-connector-java-5.1.0-bin.jar" (dans le dossier de décompression du driver JDBC de MySQL)

Note :
Bien sûr cette opération est nécessaire la première fois pour indiquer l'emplacement du driver

61. Plus de messages d'erreurs

Quand le bon driver est trouvé et sélectionné, il y plus de messages d'erreur

Un clic sur "OK" -> un autre clic sur "OK" pour fermer la fenêtre de "Preferences".

62. Création d'un nouveau profile de connexion

Dans le Perspective Base de données

Note :
Si la perspective n'est pas déjà ouverte :
Un clic sur "Window" -> Open perspective -> Other -> Database Development

Dans "Data Source Explorer" -> sélectionner "Databases" ->un clic droit -> "New
"

63. Profile de connexion (Connection Profile)

Sélectionner "MySQL" -> entrer le nom pour le profile de connexion (au choix) et une description (optionnelle) ->un clic sur "Next"

64. New MySQL Connection Profile

Un clic sur l'onglet "General" -> entrer un nom pour la base de données dans "Database". C'est le nom logique, que va prendre la base de données

Enter le nom d'utilisateur et le mot de passe (ces deux champs sont obligatoires)

Attention !!!
Le wizard sélectionne par défaut "root" comme utilisateur et demande son mot de passe. Il est vivement conseillé d'avoir un utilisateur ordinaire sur MySQL et de l'utiliser.

Ajouter à la fin d'URL le nom d'une base de données créée déjà sur MySQL.

Attention !!!
Le nom de la base de données (Database) à la fin de l'URL doit être le nom d'une base de données, qui existe déjà sur MySQL

Attention !!!
Contrairement à la connexion "Derby", ici il n'y a pas de case "Create Database", ni "Upgrade database to current version"

Cocher la case "Connect when the wizard completes"

Un clic sur "Next" -> validr les données pour la création du profile et d'une base de données -> "Finish"

Note :

Il est possible de se connecter à la base de données à chaque démarrage d'Eclipse -> cocher la case "connect every time the workbench is started"

65. Et voilà

La connexion est établie. L'utilisation passe par "SQL Scrapbook" ou un fichier SQL (SQL File) et les requêtes SQL, comme pour la base de données "Derby"

Note :
Ici la table PERSONNE_dans_MySQL est physiquement dans une base de données "test" sur le serveur de MySQL

66. Paramètres et personnalisation

"Window" > "Preferences" ->"Data Management" -> SQL Development

Des options permettant de personnaliser les volets de Développement SQL, comme par exemple "SQL Results", "SQL Query Builder", les options des fichiers SQL, l'orientation de volets etc.

67. Conclusion :

DTP d'Eclipse a beaucoup d'autres fonctionnalités concernant les bases de données ou les données en général, Web services, fichiers XML etc.

Beaucoup d'autres fonctionnalités, qui touchent les bases de données ne sont pas abordées dans ce tutoriel (ce n'est pas un tutoriel sur SQL) comme les requête avec "WITH", le groupage, le groupage avec conditions, les jointures. Ce genre de requête n'est pas plus difficile à construire que la requête simple avec INSERT, dans "SQL Query Builder", mais le tutoriel est déjà assez long :-;

Merci

68. Sites Web :

http://www.eclipse.org

http://www.mysql.com

http://java.sun.com

http://db.apache.org/derby

Proposer un tutoriel
Vous souhaitez partagez vos connaissances avec les membres de Programmez! Publiez vos tutoriels.

L'auteur
ka (Kaesar ALNIJRES)

Développeur Java - Manager Web



http://www.iipt.fr

De A à Z
Programmez.com - 2013 - Tous droits réservés
Développement - WEB - ASP - PHP - C++ - Delphi - Java - Magazines - Ressources - Forum - Télécharger - Video - Emploi - Campus - .Net - Tutoriels

Le présent site Web est édité par Go 02, Sarl inscrite au RCS de Paris sous le N° 411321366 et dont le siège social est au 21 rue de Fécamp 75012 Paris.
Adresse de courrier électronique :diff@programmez.com

Le directeur de la publication du site www.programmez.com est Jean-Claude Vaudecrane en qualité de gérant de la sarl GO 02

Le portail du décideur informatique en entreprise : Solutions & Logiciels