BAB IV IMPLEMENTASI
4.2.2. Pembuatan Tabel pada Database MySQL
1. Tabel Karyawan
Pembuatan tabel karyawans pada database dibuat dalam kelas
CreateKaryawans yang di-generate dalam pembuatan model Karyawan. Kelas
kolom id, nama, status_login, aktivasi, username, hash_password, salt,
date_created dan last_update. Tabel karyawans berfungsi untuk menyimpan data-data karyawan. Sintak kelas CreateKaryawans adalah sebagai berikut:
class CreateKaryawans < ActiveRecord::Migration def self.up
create_table :karyawans do |t| t.column :nama, :string
t.column :status_login, :string t.column :aktivasi, :string
t.column :username, :string t.column :hash_password, :string t.column :salt, :string
t.column :date_created, :datetime t.column :last_updated, :datetime end end def self.down drop_table :karyawans end end 2. Tabel Informasi
Pembuatan tabel informasis pada database dibuat dalam kelas
CreateInformasis yang di-generate dalam pembuatan model Informasi. Kelas
CreateInformasis akan membuatkan tabel informasis pada database dengan kolom
id, judul_info, isi, karyawan_id, nama_file, tipe_file, date_created, last_updated, date_expired, file_info. Tabel informasis berfungsi untuk menyimpan data-data informasi. Sintak kelas CreateInformasis adalah sebagai berikut:
class CreateInformasis < ActiveRecord::Migration def self.up
create_table :informasis do |t| t.column :judul_info, :string t.column :isi, :text
t.column :karyawan_id, :integer t.column :nama_file, :string
t.column :tipe_file, :string t.column :date_created, :datetime t.column :last_updated, :datetime t.column :date_expired, :datetime end
execute 'ALTER TABLE informasis ADD COLUMN file_info LONGBLOB' execute "ALTER TABLE informasis ADD CONSTRAINT fk_karyawan_id
FOREIGN KEY (karyawan_id) REFERENCES karyawans(id)" end
def self.down
drop_table :informasis end
end
3. Tabel Status Mahasiswa
Pembuatan tabel status_mahasiswas pada database dibuat dalam kelas
CreateStatusMahasiswas yang di-generate dalam pembuatan model
StatusMahasiswa. Kelas CreateStatusMahasiswas akan membuatkan tabel
status_mahasiswas pada database dengan kolom id dan jenis_status. Tabel
status_mahasiswas berfungsi untuk menyimpan data-data status mahasiswa. Sintak kelas CreateStatusMahasiswas adalah sebagai berikut:
class CreateStatusMahasiswas < ActiveRecord::Migration def self.up
create_table :status_mahasiswas do |t| t.column :jenis_status, :string end end def self.down drop_table :status_mahasiswas end end
4. Tabel Kategori Skripsi
Pembuatan tabel kategori_skripsis pada database dibuat dalam kelas
CreateKategoriSkripsis yang di-generate dalam pembuatan model
KategoriSkripsi. Kelas CreateKategoriSkripsis akan membuatkan tabel
kategori_skripsis pada database dengan kolom id dan jenis_kategori. Tabel
kategori_skripsis berfungsi untuk menyimpan data-data kategori skripsi. Sintak kelas CreateKategoriSkripsis adalah sebagai berikut:
class CreateKategoriSkripsis < ActiveRecord::Migration def self.up
create_table :kategori_skripsis do |t| t.column :jenis_kategori, :string end end def self.down drop_table :kategori_skripsis end end 5. Tabel Mahasiswa
Pembuatan tabel mahasiswas pada database dibuat dalam kelas
CreateMahasiswas yang di-generate dalam pembuatan model Mahasiswa. Kelas
CreateMahasiswas akan membuatkan tabel mahasiswas pada database dengan
kolom id, nama, nim, status_mahasiswa_id, aktivasi, username, hash_password,
salt, date_created dan last_updated. Tabel mahasiswas berfungsi untuk
menyimpan data-data mahasiswa. Sintak kelas CreateMahasiswas adalah sebagai berikut:
class CreateMahasiswas < ActiveRecord::Migration def self.up
create_table :mahasiswas do |t| t.column :nama, :string
t.column :nim, :string
t.column :status_mahasiswa_id, :integer t.column :aktivasi, :string
t.column :username, :string t.column :hash_password, :string t.column :salt, :string
t.column :date_created, :datetime t.column :last_updated, :datetime end
execute "ALTER TABLE mahasiswas
ADD CONSTRAINT fk_mahasiswa_status_mahasiswas FOREIGN KEY (status_mahasiswa_id)
REFERENCES status_mahasiswas(id)" end def self.down drop_table :mahasiswas end end 6. Tabel Dosen
Pembuatan tabel dosens pada database dibuat dalam kelas CreateDosens
yang di-generate dalam pembuatan model Dosen. Kelas CreateDosens akan
membuatkan tabel dosens pada database dengan kolom id, nama, nid, nip,
jabatan, aktivasi, username, hash_password, salt, date_created dan last_updated.
Tabel dosens berfungsi untuk menyimpan data-data dosen. Sintak kelas CreateDosens adalah sebagai berikut:
class CreateDosens < ActiveRecord::Migration def self.up
create_table :dosens do |t| t.column :nama, :string t.column :nid, :string t.column :nip, :string t.column :jabatan, :string t.column :aktivasi, :string t.column :username, :string t.column :hash_password, :string t.column :salt, :string t.column :date_created, :datetime t.column :last_updated, :datetime
end end def self.down drop_table :dosens end end 7. Tabel Skripsi
Pembuatan tabel skripsis pada database dibuat dalam kelas CreateSkripsis
yang di-generate dalam pembuatan model Skripsi. Kelas CreateSkripsis akan
membuatkan tabel skripsis pada database dengan kolom id, judul, abstraksi,
tekno_pemrog, tekno_db, kategori_skripsi_id, mahasiswa_id, status_skripsi, catatan_status, tipe_skripsi, nama_skripsi, tipe_gambar, nama_gambar, date_created, last_updated, file_skripsi dan file_gambar. Tabel skripsis berfungsi untuk menyimpan data-data skripsi. Sintak kelas CreateSkripsis adalah sebagai berikut:
class CreateSkripsis < ActiveRecord::Migration def self.up
create_table :skripsis do |t| t.column :judul, :string t.column :abstraksi, :text t.column :tekno_pemrog, :string t.column :tekno_db, :string
t.column :kategori_skripsi_id, :integer t.column :mahasiswa_id, :integer t.column :status_skripsi, :string t.column :catatan_status, :string t.column :tipe_skripsi, :string t.column :nama_skripsi, :string t.column :tipe_gambar, :string t.column :nama_gambar, :string t.column :date_created, :datetime t.column :last_updated, :datetime end
execute 'ALTER TABLE skripsis ADD COLUMN file_skripsi LONGBLOB' execute 'ALTER TABLE skripsis
ADD COLUMN file_gambar LONGBLOB' execute 'ALTER TABLE skripsis
ADD CONSTRAINT fk_skripsi_kategori_skripsis FOREIGN KEY (kategori_skripsi_id)
REFERENCES kategori_skripsis(id)' execute 'ALTER TABLE skripsis ADD CONSTRAINT fk_skripsi_mahasiswa
FOREIGN KEY (mahasiswa_id) REFERENCES mahasiswas(id)' end def self.down drop_table :skripsis end end 8. Tabel Web
Pembuatan tabel webs pada database dibuat dalam kelas CreateWebs yang di-generate dalam pembuatan model Web. Kelas CreateWebs akan membuatkan
tabel webs pada database dengan kolom id, judul_web, deskripsi_web, nama_universitas, alamat_universitas, no_telp, no_fax, tentang_sistem, kontak_kami, bantuan_sistem, kebijakan, logo_banner, tipe-banner. Tabel webs berfungsi untuk menyimpan data-data web. Sintak kelas CreateWebs adalah sebagai berikut:
class CreateWebs < ActiveRecord::Migration def self.up
create_table :webs do |t| t.column :judul_web, :string t.column :deskripsi_web, :text t.column :nama_universitas, :string t.column :alamat_universitas, :text t.column :no_telp, :string
t.column :no_fax, :string t.column :tentang_sistem, :text t.column :kontak_kami, :text t.column :bantuan_sistem, :text t.column :kebijaksanaan, :text t.column :logo_banner, :binary t.column :tipe_banner, :string end
end def self.down drop_table :webs end end 9. Tabel Session
Pembuatan tabel sessions pada database dibuat dalam kelas. Kelas Session
akan membuatkan tabel sessions pada database dengan kolom id, sessions_id,
data, update_at. Tabel sessions berfungsi untuk menyimpan data-data session.
Sintak kelas Sessions adalah sebagai berikut:
class Session < ActiveRecord::Migration def self.up
create_table :sessions do |t| t.column :session_id, :string t.column :data, :text
t.column :updated_at, :datetime end
add_index :sessions, :session_id add_index :sessions, :updated_at end def self.down drop_table :sessions end end