Creating Table after searching Records , Insertion records
Write the following code in a file named "OracleQuery.java"
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
class OracleQuery extends JFrame implements ActionListener
{
JTextField name,addr,sal;
JLabel n,a,s;
JButton ins,canc,clr,find;
JTable table=null;
JScrollPane jsp;
OracleQuery()
{
setLayout(null);
name=new JTextField(15);
addr=new JTextField(15);
sal=new JTextField(15);
n=new JLabel("Enter Employee Name :");
a=new JLabel("Enter Employee Address :");
s=new JLabel("Enter Employee Salary :");
ins=new JButton("Insert");
canc=new JButton("Close");
clr=new JButton("Clear");
find=new JButton("Serach Record");
add(n); add(name);
add(a); add(addr);
add(s); add(sal);
add(ins); add(canc); add(clr);
add(find);
n.setBounds(10,10,130,25); name.setBounds(170,10,130,25);
a.setBounds(10,50,150,25); addr.setBounds(170,50,130,25);
s.setBounds(10,90,150,25); sal.setBounds(170,90,130,25);
ins.setBounds(20,130,80,30); canc.setBounds(110,130,80,30);
clr.setBounds(200,130,80,30);
find.setBounds(100,360,130,30);
setBounds(150,100,330,450);
getContentPane().setBackground(new Color(200,208,247));
setTitle("Insert Records...");
setVisible(true);
ins.addActionListener(this);
canc.addActionListener(this);
clr.addActionListener(this);
find.addActionListener(this);
}
public void actionPerformed(ActionEvent ae)
{
if(ae.getSource()==ins)
{
try{
String nm=name.getText();
String ad=addr.getText();
int salry=Integer.parseInt(sal.getText());
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521","system","123456");
/* Statement st=con.createStatement();
String query="insert into emp values(' "+nm+" ' , ' "+ad+" ' , "+salry+")";
int n= st.executeUpdate(query);
*/
PreparedStatement pst=con.prepareStatement("insert into emp values(?,?,?)");
pst.setString(1,nm);
pst.setString(2,ad);
pst.setInt(3,salry);
int n= pst.executeUpdate();
if(n>0)
JOptionPane.showMessageDialog(this,"Record Inserted..");
else
JOptionPane.showMessageDialog(this,"Record Insertion Error..");
}catch(Exception ex) {}
}
else if(ae.getSource()==canc)
this.dispose();
else if(ae.getSource()==clr)
{
name.setText(""); addr.setText(""); sal.setText("");
}
else if(ae.getSource()==find)
{
String ename=JOptionPane.showInputDialog(this,"Enter Employee name :","Find",JOptionPane.INFORMATION_MESSAGE);
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521","system","123456");
Statement st=con.createStatement();
String qry="select * from emp where name like '%"+ename+"%' ";
ResultSet rs=st.executeQuery(qry);
ResultSetMetaData rsmt=rs.getMetaData();
int totcol=rsmt.getColumnCount();
String colname[]=new String[totcol];
for(int i=0;i<totcol;i++)
colname[i]=rsmt.getColumnName(i+1);
int row=0;
while(rs.next())
row++; // count number of rows
if(row>0)
{
rs=st.executeQuery(qry);
Object[][] data=new Object[row][totcol];
int r=0;
while(rs.next())
{
data[r][0]=rs.getString(1);
data[r][1]=rs.getString(2);
data[r][2]=rs.getString(3);
r++;
}
if(table!=null)
{
this.remove(table);
this.remove(jsp);
}
table=new JTable(data,colname); // Creating Table
jsp=new JScrollPane(table);
add(jsp);
jsp.setBounds(10,180,300,160);
show();
}
else
JOptionPane.showMessageDialog(this,"Record Not Found...","Error",JOptionPane.ERROR_MESSAGE);
} catch(Exception ex) { System.out.println(ex);}
}
}
public static void main(String arg[])
{
new OracleQuery();
}
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
class OracleQuery extends JFrame implements ActionListener
{
JTextField name,addr,sal;
JLabel n,a,s;
JButton ins,canc,clr,find;
JTable table=null;
JScrollPane jsp;
OracleQuery()
{
setLayout(null);
name=new JTextField(15);
addr=new JTextField(15);
sal=new JTextField(15);
n=new JLabel("Enter Employee Name :");
a=new JLabel("Enter Employee Address :");
s=new JLabel("Enter Employee Salary :");
ins=new JButton("Insert");
canc=new JButton("Close");
clr=new JButton("Clear");
find=new JButton("Serach Record");
add(n); add(name);
add(a); add(addr);
add(s); add(sal);
add(ins); add(canc); add(clr);
add(find);
n.setBounds(10,10,130,25); name.setBounds(170,10,130,25);
a.setBounds(10,50,150,25); addr.setBounds(170,50,130,25);
s.setBounds(10,90,150,25); sal.setBounds(170,90,130,25);
ins.setBounds(20,130,80,30); canc.setBounds(110,130,80,30);
clr.setBounds(200,130,80,30);
find.setBounds(100,360,130,30);
setBounds(150,100,330,450);
getContentPane().setBackground(new Color(200,208,247));
setTitle("Insert Records...");
setVisible(true);
ins.addActionListener(this);
canc.addActionListener(this);
clr.addActionListener(this);
find.addActionListener(this);
}
public void actionPerformed(ActionEvent ae)
{
if(ae.getSource()==ins)
{
try{
String nm=name.getText();
String ad=addr.getText();
int salry=Integer.parseInt(sal.getText());
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521","system","123456");
/* Statement st=con.createStatement();
String query="insert into emp values(' "+nm+" ' , ' "+ad+" ' , "+salry+")";
int n= st.executeUpdate(query);
*/
PreparedStatement pst=con.prepareStatement("insert into emp values(?,?,?)");
pst.setString(1,nm);
pst.setString(2,ad);
pst.setInt(3,salry);
int n= pst.executeUpdate();
if(n>0)
JOptionPane.showMessageDialog(this,"Record Inserted..");
else
JOptionPane.showMessageDialog(this,"Record Insertion Error..");
}catch(Exception ex) {}
}
else if(ae.getSource()==canc)
this.dispose();
else if(ae.getSource()==clr)
{
name.setText(""); addr.setText(""); sal.setText("");
}
else if(ae.getSource()==find)
{
String ename=JOptionPane.showInputDialog(this,"Enter Employee name :","Find",JOptionPane.INFORMATION_MESSAGE);
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521","system","123456");
Statement st=con.createStatement();
String qry="select * from emp where name like '%"+ename+"%' ";
ResultSet rs=st.executeQuery(qry);
ResultSetMetaData rsmt=rs.getMetaData();
int totcol=rsmt.getColumnCount();
String colname[]=new String[totcol];
for(int i=0;i<totcol;i++)
colname[i]=rsmt.getColumnName(i+1);
int row=0;
while(rs.next())
row++; // count number of rows
if(row>0)
{
rs=st.executeQuery(qry);
Object[][] data=new Object[row][totcol];
int r=0;
while(rs.next())
{
data[r][0]=rs.getString(1);
data[r][1]=rs.getString(2);
data[r][2]=rs.getString(3);
r++;
}
if(table!=null)
{
this.remove(table);
this.remove(jsp);
}
table=new JTable(data,colname); // Creating Table
jsp=new JScrollPane(table);
add(jsp);
jsp.setBounds(10,180,300,160);
show();
}
else
JOptionPane.showMessageDialog(this,"Record Not Found...","Error",JOptionPane.ERROR_MESSAGE);
} catch(Exception ex) { System.out.println(ex);}
}
}
public static void main(String arg[])
{
new OracleQuery();
}
}
Compile the file and run
javac OracleQuery.java
java OracleQuery
Now Enjoy Output :
Comments
Post a Comment