module Item::Crud

Module ini adalah bagian dari module Item yang bertujuan untuk bertindak sebagai wrapper terhadap database

Constants

VERSION

Versi dari library Crud

Public Class Methods

close_connection(connection) click to toggle source

Menghapus sebubah koneksi database

# File lib/item/crud.rb, line 15
def self.close_connection(connection)
  connection.close
end
connect() click to toggle source

Membuat koneksi terhadap database

# File lib/item/crud.rb, line 10
def self.connect
  connection = Mysql.new(ENV['DB_HOST'], ENV["DB_USER"], ENV["DB_PASSWORD"], ENV["DATABASE"])
end
create(name) click to toggle source

Melakukan query untuk memasukkan item kedalam database. Function mengembalikan 2 hal, yaitu status dan id dari item tersebut.

# File lib/item/crud.rb, line 35
def self.create(name) 
  connection = connect()
  item = connection.query("insert into item (name) values (\'#{name}\')")
  query = connection.query('SELECT LAST_INSERT_ID()') 
  id = -1
  query.each do |row|
    id = row
  end
  close_connection(connection)
  return "OK", id
end
delete(id) click to toggle source

Melakukan query terhadap database untuk menghapus sebuah barang berdasarkan id. Function ini akan mengembalikan status dari operasi.

# File lib/item/crud.rb, line 58
def self.delete(id)
  connection = connect()
  query = connection.query("delete from item where id = #{id.to_i}")
  close_connection(connection)
  status = "OK"
end
get(id) click to toggle source

Melakukan query terhadap database untuk mendapatkan nama item berdasarkan id.

# File lib/item/crud.rb, line 21
def self.get(id)
  connection = connect()
  id = id.to_i
  query = connection.query("select * from item where id = #{id}")
  name = ""
  query.each_hash do |row|
    name = row["name"]
  end
  close_connection(connection)
  name
end
update(id, name) click to toggle source

Melakukan query terhadap database untuk mengganti nama sebuah item berdasarkan id. Function ini mengembalikan status dari operasi ini.

# File lib/item/crud.rb, line 49
def self.update(id, name)
  connection = connect()
  query = connection.query("update item set name = \'#{name}\' where id = #{id.to_i}")
  close_connection(connection)
  status = "OK"
end