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

Web sémantique Discussion :

Connexion de base d'ontologie


Sujet :

Web sémantique

  1. #1
    Candidat au Club
    Femme Profil pro
    ismg
    Inscrit en
    Novembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ismg
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Connexion de base d'ontologie
    Salut,
    je créé une ontologie avec protégé. Je cherche un code pour remplir ma base de données (Mysql)

    Le code de l'ontologie est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    package Jena1;
     
    import com.hp.hpl.jena.ontology.Individual;
    import com.hp.hpl.jena.ontology.ObjectProperty;
    import com.hp.hpl.jena.ontology.OntClass;
    import com.hp.hpl.jena.ontology.OntModel;
    import com.hp.hpl.jena.ontology.OntModelSpec;
    import com.hp.hpl.jena.ontology.OntProperty;
    import com.hp.hpl.jena.rdf.model.*;
    import com.hp.hpl.jena.query.*;
    import com.hp.hpl.jena.util.FileManager;
    import com.hp.hpl.jena.vocabulary.RDF;
    import com.hp.hpl.jena.vocabulary.VCARD;
    import com.hp.hpl.jena.ontology.DatatypeProperty;
     
    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.PrintStream;
    import java.io.StringWriter;
    import java.util.Iterator;
    import java.util.Collections;
    import java.util.Scanner;
    import java.util.logging.Level;
    import java.util.logging.Logger;
    import java.io.PrintWriter;
     
    import org.apache.jena.atlas.logging.Log;
    import org.apache.jena.iri.impl.Main;
    import org.openjena.atlas.io.IndentedWriter;
     
    import java.math.*;
    import java.sql.*;
    import java.sql.Statement;
    import java.sql.ResultSet;
     
     
     
    public class Hellojena {
     
        //private static final OntClass Personne = null;
     
        //private static Scanner kB;
     
        public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException, SQLException, FileNotFoundException {
     
     
            Statement stmt;
            int mode;
            Class.forName("com.mysql.jdbc.Driver").newInstance();
            String url=new String("jdbc:mysql://localhost:3306/ontocl");
            Connection conn=DriverManager.getConnection(url, "root",null);
            System.out.println("connexion etablir...");
            stmt=conn.createStatement();
     
          OntModel model = ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_MEM);
            //model.read(reader,null);
     
     
          FileInputStream in = null;
          try 
          {
             in=new FileInputStream("C:/Users/ontologies/exemple.owl");
          } 
          catch (FileNotFoundException ex) 
          {
             Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
          }
          model.read(in,null,null);
     
     
     
     
            Iterator classIter = model.listClasses();
     
          while (classIter.hasNext()) {
     
            OntClass ontClass = (OntClass) classIter.next();
            String uri = ontClass.getLocalName();
             if(uri != null)
            System.out.println(uri);
     
     
     
     
            ///////////// l'ajout des classes et ses sous classes     //////////////////////////
         if(ontClass.hasSubClass())
              {
                Iterator s = (Iterator) ontClass.listSubClasses();
     
                for (Iterator i = ontClass.listSubClasses(); i.hasNext();) {
                            OntClass c = (OntClass) i.next();
                            System.out.print("   " + c.getLocalName() + " " + "\n");
     
                   String req="INSERT INTO `ontocl`.`Tp` ( `Subject` , `Property` , `Object` )"+
                              "VALUES ( '"+uri+"', 'subClassOf', '"+c.getLocalName()+"');";
     
                        mode=stmt.executeUpdate(req);
                          System.out.println(req);
     
                        }
              }  
     
            }
    J'obtiens l'erreur suivante :
    log4j:WARN No appenders could be found for logger (org.apache.jena.riot.system.stream.JenaIOEnvironment).
    log4j:WARN Please initialize the log4j system properly.
    log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
    Enseignant
    grade
    Exception in thread "main" java.sql.SQLException: Champ 'Subject' inconnu dans field list
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2847)
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1531)
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1622)
    at com.mysql.jdbc.Connection.execSQL(Connection.java:2370)
    at com.mysql.jdbc.Connection.execSQL(Connection.java:2297)
    at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1289)
    at Jena1.Hellojena.main(Hellojena.java:115)
    Merci d'avance pour votre aide

  2. #2
    Rédacteur/Modérateur
    Avatar de Metafire18
    Homme Profil pro
    Ingénieur de recherche Orange Labs
    Inscrit en
    Décembre 2007
    Messages
    777
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Ingénieur de recherche Orange Labs

    Informations forums :
    Inscription : Décembre 2007
    Messages : 777
    Points : 1 894
    Points
    1 894
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Dans une requête SQL INSERT, on ne met pas de quotes pour les noms des champs ('Subject' ==> Subject).

    Bonne journée
    Pas de grandeur pour qui veut grandir. Pas de modèle pour qui cherche ce qu'il n'a jamais vu.

  3. #3
    Candidat au Club
    Femme Profil pro
    ismg
    Inscrit en
    Novembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ismg
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Comment faire pour ajouter une classe ou les données d'une classe dans la base de données?
    Par exemple, j'ai une classe Personne avec un login et un mot de passe et je n'arrive pas à charger la base de données avec ces données.
    Merci pour votre aide.

  4. #4
    Rédacteur/Modérateur
    Avatar de Metafire18
    Homme Profil pro
    Ingénieur de recherche Orange Labs
    Inscrit en
    Décembre 2007
    Messages
    777
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Ingénieur de recherche Orange Labs

    Informations forums :
    Inscription : Décembre 2007
    Messages : 777
    Points : 1 894
    Points
    1 894
    Billets dans le blog
    1
    Par défaut
    J'ai proposé une solution pour résoudre l'erreur soumise dans le premier message.
    Est-ce qu'elle a permis de résoudre le problème?
    Pas de grandeur pour qui veut grandir. Pas de modèle pour qui cherche ce qu'il n'a jamais vu.

  5. #5
    Candidat au Club
    Femme Profil pro
    ismg
    Inscrit en
    Novembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ismg
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    mais j'ai un erreur
    Exception in thread "main" java.sql.SQLException: Champ 'Subject' inconnu dans field list
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2847)
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1531)
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1622)
    at com.mysql.jdbc.Connection.execSQL(Connection.java:2370)
    at com.mysql.jdbc.Connection.execSQL(Connection.java:2297)
    at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1289)

  6. #6
    Rédacteur/Modérateur
    Avatar de Metafire18
    Homme Profil pro
    Ingénieur de recherche Orange Labs
    Inscrit en
    Décembre 2007
    Messages
    777
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Ingénieur de recherche Orange Labs

    Informations forums :
    Inscription : Décembre 2007
    Messages : 777
    Points : 1 894
    Points
    1 894
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Metafire18 Voir le message
    Dans une requête SQL INSERT, on ne met pas de quotes pour les noms des champs ('Subject' ==> Subject)
    Est-ce que tu as essayé de supprimer les quotes?
    Pas de grandeur pour qui veut grandir. Pas de modèle pour qui cherche ce qu'il n'a jamais vu.

  7. #7
    Candidat au Club
    Femme Profil pro
    ismg
    Inscrit en
    Novembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ismg
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    oui, mais l'erreur toujours present.

Discussions similaires

  1. Problème de connexion à une base access
    Par caco19 dans le forum ASP
    Réponses: 4
    Dernier message: 13/08/2004, 17h19
  2. [JSP] Connexion à une base mysql
    Par Jovial dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 20/04/2004, 15h04
  3. Réponses: 3
    Dernier message: 29/03/2004, 19h02
  4. Erreur de connexion à ma base sur serveur Debian - Apache
    Par GLDavid dans le forum Installation
    Réponses: 4
    Dernier message: 24/09/2003, 11h29
  5. Connexion à une base SQL_Serve via Internet
    Par Yoann_D dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 22/07/2003, 16h39

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