Γρήγορη αναφορά

Συνοπτικός οδηγός εργαλειοθήκης βάσεων δεδομένων Sequel Ruby

Ένας περιεκτικός οδηγός αναφοράς για το Sequel: αρθρωτή εργαλειοθήκη βάσεων δεδομένων Ruby, συνδέσεις, datasets, μοντέλα και συναλλαγές.

· Δημοσιεύτηκε

Το Sequel είναι μια ελαφριά και ασφαλής για νήματα (thread-safe) εργαλειοθήκη βάσεων δεδομένων και ORM για τη Ruby.

Σύνδεση σε Βάσεις Δεδομένων

require 'sequel'

# SQLite στη μνήμη ή σε αρχείο
DB = Sequel.sqlite('database.db')

# PostgreSQL / MySQL
DB = Sequel.connect('postgres://user:password@localhost/mydb', max_connections: 10)

Datasets & Ερωτήματα

Οι εκφράσεις του Sequel είναι αλυσιδωτές και εκτελούνται καθυστερημένα (lazy):

items = DB[:items] # Αντιπροσωπεύει το σύνολο δεδομένων (dataset)

# Select, Where, Order
items.where(category: 'tools').order(:price).limit(10).all

# Σύνθετα φίλτρα
items.where{ price > 100 }
items.exclude(status: 'archived')

# Εισαγωγή & Ενημέρωση
items.insert(name: 'Hammer', price: 15.99)
items.where(id: 1).update(price: 19.99)

# Διαγραφή
items.where(id: 1).delete

Μοντέλα Sequel

class User < Sequel::Model
  plugin :validation_helpers
  plugin :timestamps

  one_to_many :posts

  def validate
    super
    validates_presence [:name, :email]
    validates_unique :email
  end
end

user = User.create(name: 'Alice', email: '[email protected]')

Συναλλαγές Βάσης Δεδομένων

DB.transaction do
  account_a.update(balance: account_a.balance - 100)
  account_b.update(balance: account_b.balance + 100)
end

Πηγές & Αναφορές

Σχετικά θέματα