Gros Probleme PL/SQL - SQL/NoSQL - Programmation
Marsh Posté le 25-01-2006 à 22:34:53
Personne ne veut répondre ??? Aller un petit effort, je suis dans la muise...
ldoud a écrit : Bonjour tout le monde. |
Marsh Posté le 07-02-2006 à 11:31:43
Vous ne programmez pas en pl/sql mais vous faites appel à des requêtes SQL à travers du java
Le pl/sql c'est du script pour oracle basé effectivement, sur les requêtes sql...
Marsh Posté le 25-01-2006 à 22:21:46
Bonjour tout le monde.
Voila j'ai un petit probleme. je ne comprend pas ce qui se passe.
J'ai un programme java avec du code SQL autrement dit je programme en PL/SQL et je n'arrive pas à compiler.
J'utilise Oracle 9i comme SGBD et jdk 1.5 pour java.
Je suis sous windows XP.
Lorsque je compile le programme sous NetBeans je n'ai pas de probleme. La compilation et l'execution se font très bien en revanche lorsque je veux executer mon prog sous MsDos, c'est une autre histoire.......
Je mets dans mon dossier :
- Mon prog (Projet2.java)
- Le driver pour oracle (ojdbc14.jar)
J'execute les instructions suivantes :
- javac Projet2.java >>>>> pas de probleme, ca compile
- java ojdbc14.jar Projet2.class OU java ojdbc14.jar Projet2 >>>> ca me met une erreur à la con.
Erreur :
Exception in thread "main" java.lang.NoClassDefFoundError: ojdbc14/jar
*****************************
Mon Prog :
import java.sql.*;
import java.io.*;
class Projet2{
static Connection c=null;
Projet2(String log, String mdp)throws Exception{
try{
Class.forName("oracle.jdbc.driver.OracleDriver" );
c=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:MANIF",log,mdp);
c.setAutoCommit(false);
}
catch (SQLException ex){
while ( ex != null ){
System.out.println("Msg:"+ex.getMessage()+ex.getErrorCode());
}
ex=ex.getNextException();
}
}
//********************
static boolean verif_client(String nom1, String adresse1)throws Exception{
Statement s=c.createStatement();
ResultSet rs = s.executeQuery("Select NumCli from CLIENT where NomCli='"+nom1+"' and Adresse='"+adresse1+"' for update" );
if(rs.next())
return true;
else return false;
}
//**********************Nouveau Client************************
static void nouveau_client(String nom, String adresse){
int numero; String test;
try{
BufferedReader lecture = new BufferedReader(new InputStreamReader(System.in)); //pour le test
Statement s=c.createStatement();
s.executeQuery("lock table client in exclusive mode" );
ResultSet rs = s.executeQuery("Select max(NumCli) nb from client" );
test=lecture.readLine(); //pour le test
rs.next();
numero=rs.getInt("nb" );
numero=numero+1;
boolean i = s.execute("insert into Client values("+numero+",'"+nom+"','"+adresse+"')" );
if(!i)
System.out.println("Ajout dans la table CLIENT réussi" );
s.close();// !!!
System.out.println("Connection fermée" );
}
catch(Exception e){
System.out.println("Insertion non réalisée : "+e);
}
}
//******Reservation*********
static void reserve(){
String nom;
String adresse;
try{
BufferedReader lecture = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Donnez votre nom : " );
nom=lecture.readLine();
System.out.println("Donnez votre adresse : " );
adresse=lecture.readLine();
System.out.println(nom+" "+adresse);
if(verif_client(nom,adresse)==true){}
else
nouveau_client(nom,adresse);
System.out.println("client nouveau" );
}
catch(Exception e){
System.out.println("Rentree des données non réalisée : "+e);
}
}
//*******MAIN*******
public static void main(String[] args)throws Exception{
new Projet2("system","mdp" );
reserve();
}
}
*********************************
Je ne vois pas d'ou cela peut venir.
Si quelqu'un a une idée.....
Merci d'avance
L'doud
Message édité par ldoud le 25-01-2006 à 22:32:05