Setelah membuat sebuah database berserta table dan class koneksinya, selanjutnya kita akan membuat sebuah frame baru untuk menginputkan datanya, sebelumnya berikut adalah tampilan table database yg saya gunakan beserta file koneksinya.
Saya membuat sebuah table dengan nama "datamahasiswa" didalam database "mahasiswa".
Ini adalah class koneksi dengan nama "koneksi", jangan lupa untuk menambahkan JDBC mysql nya pada library.
/**
*
* @author yudhaN
*/
import java.sql.Connection;
import java.sql.DriverManager;
import javax.swing.JOptionPane;
class koneksi implements key {
Connection con;
public koneksi(){
String id, pass, driver, url;
id = "root";
pass = "";
driver = "com.mysql.jdbc.Driver";
url = "jdbc:mysql://localhost:3306/mahasiswa";
try{
Class.forName(driver).newInstance();
con = DriverManager.getConnection(url,id,pass);
if (con==null){
JOptionPane.showMessageDialog (null,"GAGAL");
}else{
JOptionPane.showMessageDialog(null,"Koneksi Berhasil");
}
}catch (Exception e){
System.out.println(""+e.getMessage());
}
}
static void main(String[]args){
koneksi k=new koneksi();
}
}
Setelah semua persiapan selesai baik itu database dan class koneksinya, sekarang kita akan membuat sebuah frame untuk menginputkan data kedalam database yg telah kita buat sebelumnya, untuk lebih jelas nya silahkan ikuti langkah-langka berikut ini.
1. Buah sebuah frame baru dengan nama "DataMahasiswa". (klik kanan-->new-->JFrame Form)
2. Tarik beberapa komponen dari menu palette, 5 label, 5textfield, 1 button, dan susun seperti gambar berikut.
3. Ubah nama variabel dari komponen-komponen tersebut (klik kanan pada komponen--> change variable name).
4. Sekarang kita akan bekerja ke lembar "Source Code", pertama silahkan import beberapa package yg nantinya akan kita butuhkan yaitu Resultset, Statement, dan JOption. Silahkan baca fungsi package Resultset dan Statement DISINI.
5. kemudan tepat dibawah kode "public class DataMahasiswa extends javax.swing.JFrame", ketikan kode berikut.
Statement st;
ResultSet rs;
koneksi koneksi;
Kode tersebut berfungsi untuk menginisialisasikan package resutset, statement, dan memanggil fungsi pada class koneksi yg telah kita buat sebelumnya, class koneksi disini akan terus kita gunakan jika frame yg kita buat ada hubungannya dengan database, sehingga kita perlu mengkoneksikannya terlebih dahulu.
6. tambahkan juga kode berikut tepat dibawah "public DataMahasiswa()".
koneksi = new koneksi();
7. Selanjutnya kita buat sebuah fungsi baru, dengan nama "reset", dimana fungsi ini nantinya akan dipanggil pada saat kita selesai menyimpan data sehingga data yg sebelumnya kita ketikan pada setiap field akan otomatis terhapus, untuk fungsi reset sendiri bisa kalian baca lebih lengkap DISINI.
private void reset(){
NPM.setText("");
NamaM.setText("");
UmurM.setText("");
Fakult.setText("");
Prodi.setText("");
}
8. Dan selanjutnya kita buat lagi sebuah fungsi baru dengan nama "simpan", dan fungsi inilah yg nantinya akan mengambil data dari setiap field dan kemudian menyimpannya ke dalam database. Pastekan kode berikut untuk membuat fungsi "simpan".
private void simpan(){
try{
st = koneksi.con.createStatement();
String sql = "insert into datamahasiswa values('"+NPM.getText()+"','"+NamaM.getText()+"','"+UmurM.getText()+"','"+Fakult.getText()+"','"+Prodi.getText()+"')";
st.executeUpdate(sql);
JOptionPane.showMessageDialog(null,"Data Berhasil Disimpan");
}catch (Exception e){
JOptionPane.showMessageDialog(null,"error : "+e.getMessage());
}
}
dari kode diatas bisa kita lihat terdapat baris kode "insert into datamahasiswa values", ini adalah bahasa SQl, yg mana bisa diartikan bahwa "memasukan ke dalam datamahasiswa dengan nilai value", datamahasiswa adalah nama table pada database kita. Dan perlu diingat, urutan values harus terurut sesuai dengan urutan kolom pada table yg ada didalam database(NPM, Nama, umur, Fakultas, Prodi).
9. Kemudian kedua fungsi tadi akan kita panggil pada action tombol simpan, silahkan kembali pada lembar "design", dan beri action pada tombol "simpan". (klik kanan--> event--> action--> actionperformed).
10. tepat dibawah kode "// TODO add your handling code here:", panggil fungsi reset dan fungsi simpan.
simpan();
reset()
Pemanggilan fungsi jangan sampai terbalik, jalankan fungsi "simpan" terlebih dahulu, baru kemudian fungsi "reset" dijalankan.Sekarang kita coba jalankan frame input data yg barusan kita buat, jika berhasil maka setelah kita klik simpan, maka akan muncul pesan "Data Berhasil Disimpan".
Untuk melihat apakah benar data tersebut telah tersimpan ke dalam database atau tidak, silahkan kalian cek pada table database kalian, jika benar tersimpan maka akan terdapat 1 baris data yg telah kita input sebelumnya.
Untuk postingan selanjutnya saya akan coba menampilkan isi data pada database yg telah kita simpan tadi kedalam sebuah table didalam frame netbeans, sehingga data yg telah kita simpan akan langsung muncul kedalam table yg strukturnya sama dengan table yg ada di dalam database.
BACA ARTIKEL SELANJUTNYA : cara menampilkan isi database ke table netbeans
@Aji Sudarmawan: oke sip gan..terima ksih atas kunjungannya..
BalasHapusmau tanya,
BalasHapusuntuk line berikut
st.executeUpdate(sql);
JOptionPane.showMessageDialog(null,"Data Berhasil Disimpan");
Selalu ada kesalahan. Entah tidak ada database tujuan yg diinputkan atau seperti apa saya kurang tahu, sehingga pada saat saya menekan tombol SIMPAN selalu menunjukkan kesalahan pada line tersebut, walaupun secara keseluruhan tidak menunjukkan ada code yg error.
mohon arahannya, terima kasih.
@Ryandi Yusuf:bentuk kesalahan kode nya seperti apa ya gan.?? kalo bisa kirim aja screenshot error nya ke email saya, nanti mudah-mudahan bisa sya bantu :)
BalasHapusKalo emang mau ngirim, ini email saya gan yudhaniagara27@gmail.com
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
BalasHapus// TODO add your handling code here:
try
{
sql="insert into laundry values('Tanggal"+txttglshendy.getText()+"',"
+"'"+txtkodepelshendy.getText()+"','"+txtnamapelshendy.getText()+"',"
+"'"+txtnotelpshendy.getText()+"','"+taalamatshendy.getText()+"',"
+"'"+txtberatshendy.getText()+"','"+txthargashendy.getText()+"','"
+"'"+txtttlbyrshendy.getText()+"')";
st= con.createStatement();
st.executeUpdate(sql);
JOptionPane.showMessageDialog(null, "SUKSES TERSIMPAN");
kosong();
}catch (Exception e)
{
JOptionPane.showMessageDialog(null, "GAGAL MENYIMPAN");
}
}
gan ane selalu gagal insert
saat insert selalu GAGAL MENYIMPAN gan dan tidak terinput kedalam database padahal setatus koneksi sudah konek T_T
BalasHapuscoba perhatikan benar titik koma pada setiap baris nya gan, terutama yg ada dalam variabel SQL, terus coba tambahkan class konesi nya pada variabel st, misal : st = KONEKSI.con.createStatement();
Hapustutorial yg sangat bermanfaat. sudah saya coba. sukses, wlw ada error sedikit di bagian coding koneksi. tpi dah ketemu errornya. makasih buat ilmunya lagi gan.! like it..!
BalasHapusimport java.sql.DriverManager;
BalasHapusimport java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JOptionPane;
import java.sql.Connection;
public class Dealer extends javax.swing.JFrame {
Statement st;
ResultSet rs;
Connection koneksi;
/** Creates new form Dealer */
public Dealer() {
koneksi = new koneksi ();
initComponents();
ka yudhaaa, saya bikin ikut tutorial kaka,
kenapa koneksinya error ya ka?
tulisannya cannot find symbol
symbol : class koneksi
location : class dealer
makasih ya kaa, tutorialnya sangat membantuuu
Coba disamakan kodingannya sama yang ada di tutorial ini, disesuaikan juga sama class-class nya, dan coba lebih dipahami lagi tutorial ini dari awal, nanti pasti ketemu kok solusi berhasilnya :)
Hapusterimakasih atas bantuan nya gan.. java dan database yg seharusnya saya pelajari masing" setengah tahun, saya bisa pelajari dalam 2 hari saja
BalasHapusgan mau tanya... koneksinya ke database sudah berhasil
BalasHapustapi ketika pas mau di simpan.. muncul notifikasi "error: table 'mahasiswa.mahasiswa'doesnt exist"
kira kira itu knapa yah.. mohon bantuannya
mungkin itu error pada table database nya gan, coba sesuaikan lagi antara nama table sama nama2 kolom pada kodingan, sama nama2 pada table mysql nya. semoga membantu :)
HapusOk gan thanks .. Sudah berhasil .. Tidak error lagi.. Sangat membantu gan.
Hapusyang ini buat apaan?
BalasHapusclass koneksi implements key {
di bagian 'key' error
maaf mau tanya gan...
BalasHapuskenapa ya pada saat menyimpan data tidak bisa. dan keluar message.
error:com.mysql.jdbc.Statementlmpl cannot be cast to mahasiswa.DataMahasiswa$Statement.
terimakasih