import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;

class DatabaseMaken extends JFrame implements ActionListener {
	
    //we maken een nieuwe database aan
    
    private JButton button;
    private JTextField input1Field;
    private JLabel input1Label;

    public static void main (String [] args) {
        DatabaseMaken frame = new DatabaseMaken();
        frame.setSize(400, 300);
        frame.createGUI();
        frame.show();
    }

    private void createGUI() {
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        Container window = getContentPane();
        window.setLayout(new FlowLayout());

        input1Label = new JLabel("Database naam:");
        window.add(input1Label);

        input1Field = new JTextField(25);
        input1Field.setText("");
        window.add(input1Field);

        button = new JButton("Maak de database aan.");
        window.add(button);
        button.addActionListener(this);

        }

    public void actionPerformed(ActionEvent event) {
    	
        if (event.getSource() == button) {
            
           try {
      			Statement stmt;

      			//Registreer de JDBC driver voor MySQL.
      			Class.forName("com.mysql.jdbc.Driver");

      			//Definieer de URL van de mysql server op de localhost
      			String url = "jdbc:mysql://localhost";

      			//maak een connection aan naar een database voor een 
      			//gebruiker met de naam root en een blank wachtwoord.
      			//Deze gebruiker is de standaard administrator met alle rechten
      			Connection con = DriverManager.getConnection(url,"root", "");

     	      	//maak een Statement object
      			stmt = con.createStatement();

		        //maak een nieuwe database aan
      			stmt.executeUpdate("CREATE DATABASE " + input1Field.getText());      			
      			
                //sluit de connection
                con.close();
                                
    			}//einde try
    			
    			catch( Exception e ) {
    				
    				e.printStackTrace();
    				
    			}//einde catch
        
           }

    }
}



