Banner
Banner
Banner

[TUTO] Installation et configuration de SQuirreL SQL pour Sybase

Par - le février 8th, 2011

Pour mon travail, j’ai dû chercher un client sql permettant de se connecter à une base de données Sybase. Dans les critères de sélection, il fallait que celui-ci soit gratuit et qu’il puisse gérer l’unicode. Ma recherche c’est arrêté sur SQuirreL SQL.

Celui-ci est gratuit (comme souhaité), open source, sous licence GNU LGPL et disponible sous Linux, Windows et Mac. Elle est développée en JAVA et permet de se connecter à une multitude de base de données dont Sybase bien entendu. Elle possède également un système de plugin permettant de réaliser toutes sortes d’actions comme:

  • Importer des données provenant d’un fichier Excel ou cvs dans une base de données;
  • Valider les requêtes SQL au format SQL ISO;
  • La possibilité de créer des scripts INSERT de n’importe quel table et base de données;

Cet article n’a pas pour objectif de venter les mérites de cette application, mais de vous expliquer comment l’installer et la configurer pour pouvoir se connecter à une base de données Sybase. Rentrons donc tout de suite dans le vif du sujet.

Tout d’abord, vous devez télécharger la dernière version de SQuirreL ici. La version que je vais traiter est la 3.2.1 qui fonctionne avec Java 1.6.x minimum. L’installation se fera sur un Windows.  Exécutez le fichier jar fraichement téléchargé et c’est parti pour l’installation.

Les deux premières fenêtres sont purement informative, donc je ne m’attarde pas dessus:

Le 3ème écran vous propose de choisir l’endroit où sera installé l’application. Si vous ne voulez pas vous embêter laissez celui par défaut et cliquez sur suivant:

Si le répertoire n’existe pas, vous devrez confirmer:

Le 4ème écran est nettement plus intéressant puisque c’est ici que l’on va choisir les plugins à installer ainsi que la langue de l’application. Dans notre cas nous allons cocher:

  • Optional Plugin – Sybase, qui permet de gérer les spécificités de ce moteur de base de données;
  • Optional Plugin -Internationalization, qui permet de rechercher automatiquement les fichiers de traduction manquant (optionnel);
  • Optional Translation – French, pour que l’application soit traduite en français (optionnel).

Pour plus de détails sur les plugins rendez-vous ici (en anglais).

Le 5éme écran vous montre l’avancement de l’installation:

Le 6ème écran va vous permettre de définir les droits d’utilisation de l’application: pour tous les utilisateurs ou seulement pour l’utilisateur courant (utile en général uniquement en entreprise). Vous pouvez également définir si vous voulez un raccourci sur le bureau, dans le menu démarrer et quel nom de groupe pour ce dernier. Moi j’ai laissé par défaut.

L’installation est terminée. Vous pouvez générer un script d’installation automatique, mais je n’ai toujours pas trouvé comment m’en servir (si un lecteur connait la solution, je suis preneur 🙂 ).

On a fait la moitié du chemin, il ne nous reste plus que la configuration à réaliser. SQuirreL SQL à besoin des drivers JDBC de chaque type de base de données auxquelles vous voulez vous connecter. Dans notre cas, un projet gratuit et open source existe: jTDS. Celui-ci propose un driver pour sybase et SQL Serveur.

Téléchargez la dernière version ici puis décompressez l’archive à un endroit qui ne changera pas. Pour ma part ce sera dans C:Program Filesjtds. Lancez SQuirreL SQL:

Nous allons maintenant ajouter le driver jTDS à l’application. Pour cela, ouvrez l’onglet Drivers en haut à gauche de l’écran, puis clic droit sur JTDS Sybase et enfin Modifier Driver…


Là, nous sommes sur la fenêtre de configuration du drivers JTDS Sybase. Accéder à l’onglet Class Path supplémentaire puis cliquer sur le bouton Ajouter.


Dans l’explorateur de fichier qui vient de s’ouvrir, allez à l’emplacement de votre driver jTDS. Dans mon cas C:Program Filesjtds. Sélectionnez le fichier .jar puis validez.

Validez de nouveau à l’écran de configuration du driver JTDS Sybase. Vous retournerez sur l’écran principal et si tout c’est bien passé un message surligné en vert fluo vous annonce la réussite. Sinon un message surligné en rouge apparait avec le détail de l’erreur.

Il ne nous reste plus qu’à créer la connexion à notre base de données. Pour se faire, allez dans l’onglet Alias en haut à gauche de la fenêtre principal puis cliquez sur le bouton ajouter (symbolisé par un plus bleu).

Remplissez le formulaire:

  • Nom: c’est le nom qui sera indiqué quand l’onglet Alias;
  • Driver: Sélectionnez celui que nous venons de configurer (JTDS Sybase)
  • URL: le template est déjà indiqué -> jdbc:jtds:sybase://nom_serveur:num_port/nom_base_de_données
  • Nom d’utilisateur: Le login du compte sybase avec lequel vous vous connectez
  • Mot de Passe: Le mot de passe du compte

Si vous souhaitez comme moi pouvoir insérer des caractères unicodes vous devez cliquer sur le bouton propriétés puis aller dans l’onglet Propriétés du driver. Cochez la case Utiliser les propriétés de driver et rendez vous à la ligne CHARSET. Cochez la case utiliser et saisissez utf8 dans la colonne Valeur.

Vous pouvez vérifier la bonne saisie des données de connexion en cliquant sur le bouton Test. Si tout est bon, validez.

La configuration est terminée. Vous pouvez dorénavant vous connecter à vos différentes bases de données Sybase en double cliquant sur les différents Alias. Le principe est identique pour les autres moteur de base de données.

Si vous avez une bonne expérience de ce client Sql j’aimerais bien des retour. Je suis également preneur de produit concurrent.

Tags: , , , , , , , , , , , ,

3 commentaires to “[TUTO] Installation et configuration de SQuirreL SQL pour Sybase”

    kalel45 :

    Bonjour, j’ai suivie votre tuto à la lettre mais pourtant
    lorsque je souhaite me connecter à mon alias précédemment créée j’obtient une erreur.

    « Unexpected Error occurred attempting to open an SQL connection. »

    après click sur le bouton Stack Trace, j’obtient:

    java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.sql.SQLException: Unknown server host name ‘:’.
    at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
    at java.util.concurrent.FutureTask.get(Unknown Source)
    at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.awaitConnection(OpenConnectionCommand.java:132)
    at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.access$100(OpenConnectionCommand.java:45)
    at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand$2.run(OpenConnectionCommand.java:115)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    Caused by: java.lang.RuntimeException: java.sql.SQLException: Unknown server host name ‘:’.
    at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.executeConnect(OpenConnectionCommand.java:171)
    at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.access$000(OpenConnectionCommand.java:45)
    at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand$1.run(OpenConnectionCommand.java:104)
    … 6 more
    Caused by: java.sql.SQLException: Unknown server host name ‘:’.
    at net.sourceforge.jtds.jdbc.ConnectionJDBC2.(ConnectionJDBC2.java:408)
    at net.sourceforge.jtds.jdbc.ConnectionJDBC3.(ConnectionJDBC3.java:50)
    at net.sourceforge.jtds.jdbc.Driver.connect(Driver.java:185)
    at net.sourceforge.squirrel_sql.fw.sql.SQLDriverManager.getConnection(SQLDriverManager.java:133)
    at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.executeConnect(OpenConnectionCommand.java:167)
    … 8 more
    Caused by: java.net.UnknownHostException: :
    at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
    at java.net.PlainSocketImpl.connect(Unknown Source)
    at java.net.SocksSocketImpl.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at net.sourceforge.jtds.jdbc.SharedSocket.createSocketForJDBC3(SharedSocket.java:311)
    at net.sourceforge.jtds.jdbc.SharedSocket.(SharedSocket.java:261)
    at net.sourceforge.jtds.jdbc.ConnectionJDBC2.(ConnectionJDBC2.java:318)
    … 12 more

    Savez vous d’ou viens l’erreur?

    Merci

    Pascal :

    Je vous invite à tester SQLeo qui est tellement plus simple à installer, pour quasiment les mêmes fonctionnalités.

    Salutations

    Steve AMANG :

    Bonjour

    je souhaite aussi tester le produit et je voudrais savoir si on peut aussi l’utiliser avec oracle et comment configurer

    D’avance merci

Laissez un commentaire

Catégorie(s): Software, Tutos