Filter:   InfoImg
download TestSql.java
Language: Java
LOC: 119
Project Info
' href='/info.aspx?c=ProjectInfo&pid=P4U8PWB5R6WUX1WQBD5H456NNA'> BeOnTime
Server: BerliOS
Type: cvs
...umlv\smoreau\beontime\test\
   .cvsignore
   Clipboard.java
   DragAndDrop.java
   Print.java
   TestDate.java
   TestJunit.java
   TestLDAP.java
   TestSql.java

package fr.umlv.smoreau.beontime.test;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/**
 * @author BeOnTime
 */
public class TestSql {

	public Connection getConnection(String url,String user, String passwd) 
{
		try {
			Class.forName("org.postgresql.Driver");
			Connection connexion = DriverManager.getConnection(url,user,passwd);
			return connexion;
		} catch (ClassNotFoundException e) {
			System.out.println("Driver not found");
			return null;
		} catch (SQLException e) {
			System.out.println("Database or Login/passwd are wrong");
			return null;
		}
		
	}
	public String getById(Connection connexion,int i){
		String name;
		name="";
		try {
			PreparedStatement pst = connexion.prepareStatement("SELECT nom,prenom FROM etudiant WHERE Id = ?;");
			pst.setInt(1,i);
			ResultSet rs=pst.executeQuery();
			rs.next();
			name="Nom : "+rs.getString(1)+" ; Prenom : "+rs.getString(2);
			return name;
		} catch (SQLException e) {
			System.out.println("Query Error");
			return null;
		}	
	}

	public String getAll(Connection connexion){
		String name;
		name="";
		try {
			PreparedStatement pst = connexion.prepareStatement("SELECT * FROM etudiant;");
			ResultSet rs=pst.executeQuery();
			while(rs.next()){
				name=name+"Id : "+rs.getInt(1)+" ; Nom : "+rs.getString(2)+" ; Prenom : "+rs.getString(3)+"\n";
			}
			
			return name;
		} catch (SQLException e) {
			System.out.println("Query Error");
			return null;
		}	
	}
	
	public boolean addEtudiant(Connection connexion,String nom,String prenom){
		int i = 0;
		try {
			i=getMaxId(connexion)+1;
			Statement st = connexion.createStatement();
			st.execute("INSERT INTO etudiant VALUES ("+i+", '"+nom+"', '"+prenom+"');");
			return true;
		} catch (SQLException e) {
			e.printStackTrace();
			return false;
		}
		

	}


	private int getMaxId(Connection connexion) {
		int i = 0;
		try {
			PreparedStatement pst = connexion.prepareStatement("SELECT max(*) FROM etudiant;");
			ResultSet rs=pst.executeQuery();
			rs.next();
			i = rs.getInt(1);
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return i;
	}
	private boolean deleteByName(Connection connexion,String name) {
		
		try {
			Statement pst = connexion.createStatement();
			pst.execute("DELETE FROM etudiant WHERE nom = '"+name+"';");
			return true;
		} catch (SQLException e) {
			e.printStackTrace();
			return false;
		}
	}
	
	public static void main(String[] args) {
		TestSql tSql=new TestSql();
		Connection connexion=tSql.getConnection("jdbc:postgresql://saadouni.dyndns.org:5432/bot","bot","bot");
		String name;
		System.out.println("\nAjout d'un tudiant :\n-------------------------\n");
		boolean ret=tSql.addEtudiant(connexion,"Doe","John");
		if (ret){
			System.out.println("L'tudiant John Doe  t rajout avec succes");
		}
		else{
			System.out.println("L'tudiant John Doe n'a pas t rajout a la base");
		}
		System.out.println("\nListe des Etudiants:\n-------------------------\n");
		name=tSql.getAll(connexion);
		System.out.println(name);
		System.out.println("\nSuppresion d'un tudiant :\n-------------------------\n");
		ret=tSql.deleteByName(connexion,"Doe");
		if (ret){
			System.out.println("L'tudiant John Doe  t supprim avec succes");
		}
		else{
			System.out.println("L'tudiant John Doe n'a pas t supprim de la base");
		}
		System.out.println("\nListe des Etudiants:\n-------------------------\n");
		name=tSql.getAll(connexion);
		System.out.println(name);
		try {
			connexion.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}
}