
Database Integration
SQLx, Diesel, akses database async, connection pooling, migrasi, query builder, pola ORM
1Apa perbedaan utama antara SQLx dan Diesel dalam hal verifikasi query?
Apa perbedaan utama antara SQLx dan Diesel dalam hal verifikasi query?
Jawaban
SQLx melakukan verifikasi query saat compile-time dengan terhubung ke database nyata selama proses build. Diesel menggunakan DSL (Domain-Specific Language) Rust untuk membangun query yang type-safe tanpa memerlukan koneksi database saat compile-time. Kedua pendekatan menjamin type safety, tetapi SQLx memungkinkan penulisan raw SQL yang terverifikasi, sedangkan Diesel mengharuskan penggunaan API Rust-nya.
2Di SQLx, macro mana yang memungkinkan eksekusi query dan pemetaan hasil otomatis ke sebuah struct Rust?
Di SQLx, macro mana yang memungkinkan eksekusi query dan pemetaan hasil otomatis ke sebuah struct Rust?
Jawaban
Macro query_as! dari SQLx mengeksekusi query SQL dan secara otomatis memetakan hasil ke struct Rust yang ditentukan. Macro ini memverifikasi saat compile-time bahwa kolom yang dikembalikan cocok dengan field struct, sehingga menjamin type safety. Macro query! mengembalikan tipe anonim, sedangkan query_scalar! digunakan untuk mengekstrak satu nilai tunggal.
3Bagaimana mengonfigurasi connection pool dengan SQLx untuk aplikasi PostgreSQL async?
Bagaimana mengonfigurasi connection pool dengan SQLx untuk aplikasi PostgreSQL async?
Jawaban
SQLx menggunakan PgPoolOptions untuk mengonfigurasi connection pool PostgreSQL async. Method max_connections mendefinisikan jumlah maksimum koneksi, dan connect membuat pool dari URL database. Pool secara otomatis mengelola akuisisi dan pelepasan koneksi, serta mendukung timeout dan retry yang dapat dikonfigurasi.
Di Diesel, bagaimana mendefinisikan skema tabel untuk mengaktifkan operasi CRUD yang type-safe?
Trait Diesel mana yang harus diimplementasikan sebuah struct untuk menyisipkan data ke dalam tabel?
+17 pertanyaan wawancara
Topik wawancara Rust lainnya
Dasar-Dasar Rust
Ownership & Borrowing
Structs & Enums
Penanganan Error
Collections
Module & Package
Traits
Generics
Lifetimes
Iterators & Closures
Smart Pointers
Concurrency Basics
async/await
Testing
Cargo & Ecosystem
Pattern Matching
Macro
Serde & Serialisasi
Unsafe Rust
Trait Lanjutan
Lifetime Lanjutan
Type System
Tokio & Async I/O
Optimasi Performa
Memory Management
Web Frameworks
Design Pattern Rust
Kuasai Rust untuk wawancara berikutnya
Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.
Mulai gratis