IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

pb connection avec sql server


Sujet :

JDBC Java

  1. #1
    Membre averti
    Inscrit en
    Août 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 20
    Par défaut pb connection avec sql server
    salut
    je réalise une application java sous netbeans,avec une base de donnés sql server 2005,mais j'ai un probleme de connection à cette base.
    j'ai telechargé le connector de sqlserver :sqljdbc.jar,je l'ai met dans le dossier src de mon projet puis j'ai fait: click droit sur projet ->proprités->anglet categori:librerie->add jar/folder et j'ai donné le chemin de mon driver sql.
    est ce que c la bonne maniere?
    pour la base de donné je l'ai nommais tjdbc,elle n'a pas un utilisateur spécifié ni un mot de passe.lorsq je lance sql server une fenetre s'affiche pour se connecter ou il ya : servername: type de serveur: moteur de base de données; nom du serveur: abc123\sqlexpress; Authentification: authentification windows.
    mon code est le suivant:
    package javaapplsqlserver;
    import java.sql.*;
    /**
    *
    * @author user
    */
    public class NewClass {
    private static void affiche(String message) {
    System.out.println(message);
    }
    private static void arret(String message) {
    System.err.println(message);
    System.exit(99);
    }
    public static void main(java.lang.String[] args) {
    Connection con = null;
    ResultSet résultats = null;
    String requete = "";
    // chargement du pilote
    try {
    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    } catch (ClassNotFoundException e) {
    arret("Impossible de charger le pilote jdbc:odbc");
    }
    // connection a la base de données
    affiche("connection a la base de données");
    System.out.println("*********************************");


    try {
    //String DBurl = "jdbc:odbc:t_jdbc";
    //ici on met le nom du service pas le nom de la base

    String url ="jdbc:sqlserver://localhost:1433;databaseName=tjdbc";
    con = DriverManager.getConnection(url);

    //String passwd = "";
    //con = DriverManager.getConnection(url);
    } catch (SQLException e) {
    arret("Connection à la base de données impossible");
    }
    // insertion d'un enregistrement dans la table client
    affiche("creation enregistrement");
    requete = "INSERT INTO Client VALUES(3,15,'now','oua','madm',245)";
    try {

    Statement stmt = con.createStatement();
    int nbMaj = stmt.executeUpdate(requete);
    affiche("nb mise a jour = "+nbMaj);

    } catch (SQLException e) {
    e.printStackTrace();

    }
    }
    et le probleme que j'ai : c'est que pas de connection à la base de donnés:le résultat d'execution est:

    run:
    connection a la base de données
    *********************************
    Connection à la base de données impossible
    Java Result: 99
    BUILD SUCCESSFUL (total time: 7 seconds)
    pour régler le probléme j'ai procédé à plusieur solution:
    String url ="jdbc:sqlserver://abc123\SQLEXPRESS;databaseName=tjdbc";
    et ça pas marché
    autre solution
    1) Activons les connections TCP/IP
    -lancer SQL Server 2005 Surface Area Configuration
    -puis Surface Area Configuration for Services and Connections
    -puis Database Engine -> Remote Connection
    -Choisir Using TCP/IP only

    Ecoutons le port 1433 sur nos IP (IP1/IP2/IPALL)
    -lancer SQL Server Configuration Manager
    -puis SQL Server 2005 Network Configuration -> Protocols for ...

    -Double cliquez sur TCP/IP ->IPAdresses
    -Choisir la section IP qui convient (j'ai activé que mon IP local : 127.0.0.1) et mettez la propriété enabled à true
    -Renseignez également le TC Port d'IPALL:1433;
    puis redemarer le pc.
    et ancor le probléme
    égalment j'ai activé le service : sql server browser
    mais le probleme réste encor
    s'il vous plait quel est la solution?

  2. #2
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 22
    Par défaut
    salut,

    tu es obligé de spécifier un utilisateur et un mot de passe dans ton jdbc (à moins que je ne dise une grosse bêtise...) Si tu n'as pas spécifié d'utilisateur côté BDD, alors l'utilisateur sera "sa" + "mdpAdmin" . La chaine de connexion deviens alors :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    String url ="jdbc:sqlserver://localhost:1433;database=tjdbc;user=sa;password=mdpAdmin";
    con = DriverManager.getConnection(url);

  3. #3
    Membre averti
    Inscrit en
    Août 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 20
    Par défaut
    merci pour ta reponse,j'ai la esseyé mais le probléme reste encor,pour le fait que le nom d'utilisateur et mot de passe c'est pas obligatoir,c'est ce que j'ai lu dans la doc sql server.
    j'ai besoin encor de votres aides,merci

  4. #4
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 22
    Par défaut
    Ben ça me parait un peu bizarre et assez dangereux...
    Si tu peux te connecter à SqlServer sans mot de passe c'est parce que tu passes par un système windows sur lequel tu as les droits en administrateur. (donc par corrélation windows tu as les droits admins sur ton serveur SQL) Pas ton appli.
    Essaie de créer un rôle par lequel tu passera pour te connecter et vois si ça marche. Si ça ne marche pas, au moins on sera sûr que cela ne vient pas de là.

    Mon avis : un rôle par application permet de limiter les risques de piratage et d'isoler les accès en cas de problèmes.

  5. #5
    Membre averti
    Inscrit en
    Août 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 20
    Par défaut
    probleme résolu
    en fait j'ai trouvé la solution,j'ai met une authentification mixt pour sql server.pour le mot de passe de sa je l ai changé dans l'invite de commande en tapant:
    - Taper : sp_password null, 'nouveaupassword', 'sa'

    Taper go
    et enfin j'ai changé les proprités de sa dans sql server en metant l'etat de sa connection à activé.
    pour l'url:
    j'ai ajouté user=sa et son password. et ça marché

  6. #6
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 22
    Par défaut
    Fais gaffe quand même, "sa" c'est l'utilisateur administrateur. je pense que c'est pas vraiment la solution idéale pour des problèmes de sécurité. Tu devrais néanmoins créer un utilisateur pour ton appli...

    Enfin, je dis ça je dis rien hein!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Prob de connection avec SQL Server
    Par Odledieu dans le forum C#
    Réponses: 15
    Dernier message: 27/11/2009, 11h14
  2. Problème de connection avec SQL Server Exppress 2005
    Par qlaimand dans le forum Windows Forms
    Réponses: 2
    Dernier message: 06/04/2009, 11h37
  3. Probléme de connection avec SQL SERVER
    Par benhassine dans le forum JDBC
    Réponses: 3
    Dernier message: 19/09/2007, 13h58
  4. [VS] Remote connection avec SQL Server 2005 Express
    Par Invité dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 28/05/2006, 22h28
  5. Réponses: 7
    Dernier message: 18/07/2005, 13h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo