connection java MySql

connection java MySql - Java - Programmation

Marsh Posté le 03-03-2005 à 15:26:06    

Voila j'ai un petit probleme j'ai un script sql.sql qui est juste puisque lorsque je l'execute dans la console MySql il est execute normalement  
Maintenant j'essaye de le mettre dans un programme java et la c'est le drame ca marche plus alors que je peux envoyer des requetes depuis le programme est qu'elles sont bien executé je vous passe le code qui du coup marche pas  
 

Code :
  1. Class.forName("com.mysql.jdbc.Driver" ).newInstance();
  2. String user="root";
  3. String password="admin";
  4. Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test",user,password);
  5. System.out.println("test1" );
  6. Statement stmt_jdbc = conn.createStatement();
  7. System.out.println("test2" );
  8. //stmt_jdbc.executeQuery("source C:/sql.sql;" );  
  9. stmt_jdbc.addBatch("source C:\\sql1.sql" );
  10. System.out.println("test3" );
  11. stmt_jdbc.executeBatch();
  12. System.out.println("test4" );

 
 
donc la compilation se passe bien et l'execution va jusqu'au test3 avec la methode batch et jusqu'au test2 pour l'executeQuery et voila mon erreur  
 

Code :
  1. test1
  2. test2
  3. test3
  4. java.sql.BatchUpdateException: Syntax error or access violation message from server: "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'source C:\sql1.sql' at line 1"


Message édité par cachalot le 03-03-2005 à 15:26:32
Reply

Marsh Posté le 03-03-2005 à 15:26:06   

Reply

Marsh Posté le 03-03-2005 à 18:24:48    

C'est diablement clair. Tu dois mettre une requete sql elle même et non pas une reference vers un fichier contenant du sql.

Reply

Marsh Posté le 03-03-2005 à 19:17:01    

alors je reformule ma question est-il possible de faire ce que je veux c'est a dire d'executer des requestes contenu dans un fichier

Reply

Marsh Posté le 03-03-2005 à 19:26:04    

ben oui tu lis le fichier et tu executes les requètes...

Code :
  1. File fichier = new File("Chemin vers le fichier" );
  2. StringBuffer sql = new StringBuffer();
  3. BufferedReader bf = new BufferedRead(new FileReader(fichier));
  4. while(bf.ready) {
  5.     sql.append(bf.readLine());
  6. }
  7. stmt_jdbc.execute(sql);

Reply

Marsh Posté le 03-03-2005 à 20:44:15    

ouais ca marche comme ca mais pour enlever du code j'esperait pourvoir executer directement ce qui a dans le fichier  
si quelqu'un sait je suis preneur

Reply

Marsh Posté le 03-03-2005 à 20:48:02    

Flemmard!! 7 lignes c'est déjà pas grand chose.

Reply

Marsh Posté le 03-03-2005 à 20:48:54    

ouais je c mais bon c toujours ca de moins si le code est grand  
C'etait juste un renseignement

Reply

Marsh Posté le 03-03-2005 à 20:56:07    

mon Dieu, belle philo comme tu dis...

Reply

Marsh Posté le 03-03-2005 à 20:58:31    

et ouais

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed