Logo

Base de donnees

DatabaseConfig, from_env, from_url, pool, timeouts.

DatabaseConfig — depuis .env main.rs
// .env
// DATABASE_URL=postgres://user:pass@localhost:5432/mabase

let config = DatabaseConfig::from_env()?
    .min_connections(1)
    .max_connections(20)
    .build();

let db: DatabaseConnection = config.connect().await?;
DatabaseConfig — depuis .env main.rs
// .env
// DATABASE_URL=postgres://user:pass@localhost:5432/mabase

let config = DatabaseConfig::from_env()?
    .min_connections(1)
    .max_connections(20)
    .build();

let db: DatabaseConnection = config.connect().await?;
DatabaseConfig — depuis URL directe main.rs
let config = DatabaseConfig::from_url(
    "postgres://user:pass@localhost:5432/mabase"
)?
.max_connections(50)
.connect_timeout(Duration::from_secs(10))
.build();

let db = config.connect().await?;
DatabaseConfig — depuis URL directe main.rs
let config = DatabaseConfig::from_url(
    "postgres://user:pass@localhost:5432/mabase"
)?
.max_connections(50)
.connect_timeout(Duration::from_secs(10))
.build();

let db = config.connect().await?;
Moteurs supportes
postgres://  ou  postgresql://   → PostgreSQL
mysql://                          → MySQL
mariadb://                        → MariaDB
sqlite://                         → SQLite

// Feature flags Cargo.toml
runique = { version = "1.1.50", features = ["orm", "postgres"] }
runique = { version = "1.1.50", features = ["orm", "mysql"] }
runique = { version = "1.1.50", features = ["orm", "sqlite"] }
Moteurs supportes
postgres://  ou  postgresql://   → PostgreSQL
mysql://                          → MySQL
mariadb://                        → MariaDB
sqlite://                         → SQLite

// Feature flags Cargo.toml
runique = { version = "1.1.50", features = ["orm", "postgres"] }
runique = { version = "1.1.50", features = ["orm", "mysql"] }
runique = { version = "1.1.50", features = ["orm", "sqlite"] }