İçeriğe atla

Veritabanı ve Query Builder

DizgePHP, ORM yerine PDO tabanlı bir query builder kullanır. Varsayılan veritabanı SQLite'tır; DIZGE_DB_DSN ile MySQL veya PostgreSQL'e geçilebilir.

Temel sorgulama

$tasks = db()->table('tasks')
    ->where('done', 0)
    ->orderBy('id', 'DESC')
    ->limit(20)
    ->get();

Kayıt ekleme

$id = db()->table('tasks')->insert([
    'title' => 'Yeni görev',
    'done' => 0,
    'created_at' => date('c'),
]);

Kayıt güncelleme

db()->table('tasks')
    ->where('id', $id)
    ->update(['done' => 1]);
update() ve delete() bir where() koşulu gerektirir. Koşulsuz çağrılar hata verir.

Kayıt silme

db()->table('tasks')
    ->where('id', $id)
    ->delete();

Migration

bin/dizge make:migration create_tasks_table
# database/migrations/202607231236_create_tasks_table.php oluşturulur

Migration dosyası up(Database $database) ve down(Database $database) metodlarını içerir:

public function up(Database $database): void
{
    $database->pdo()->exec('CREATE TABLE tasks (
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        title TEXT NOT NULL,
        done INTEGER NOT NULL DEFAULT 0,
        created_at TEXT NOT NULL
    )');
}
bin/dizge migrate up    # tüm bekleyen migration'ları uygular
bin/dizge migrate down  # son migration'ı geri alır

DevinimJS Bridge →