Skip to content

SQLX

๐Ÿงฐ The Rust SQL Toolkit. An async, pure Rust SQL crate featuring compile-time checked queries without a DSL. Supports PostgreSQL, MySQL, and SQLite.

๋Ÿฌ์ŠคํŠธ ๊ธฐ๋ฐ˜ SQL ํˆดํ‚ท ์˜คํ”ˆ์†Œ์Šค

About

  • ๋น„๋™๊ธฐ(async) ๋ฐฉ์‹์˜ ์ˆœ์ˆ˜ Rust ๊ธฐ๋ฐ˜ SQL Crate๋กœ, Rust ๋งคํฌ๋กœ๋ฅผ ์ด์šฉํ•ด DSL ์—†์ด ์ปดํŒŒ์ผ ํƒ€์ž„์— SQL ์ฟผ๋ฆฌ ๊ฒ€์ฆ ๊ฐ€๋Šฅ
    • ORM์ด ์•„๋‹˜! : ORM ์—†์ด SQL์„ ๊ทธ๋Œ€๋กœ ํ™œ์šฉํ•˜๊ณ  ์‹ถ์€ ํ”„๋กœ์ ํŠธ์— ์ตœ์ 
  • PostgreSQL, MySQL, MariaDB, SQLite ๋“ฑ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ง€์›
    • .env ํŒŒ์ผ์— DATABASE_URL ์ง€์ •ํ•ด ์†์‰ฝ๊ฒŒ ์ปดํŒŒ์ผ ํƒ€์ž„ ์ฒดํฌ ๊ฐ€๋Šฅ
  • Pure Rust ๊ตฌํ˜„(MySQL/MariaDB ๋“œ๋ผ์ด๋ฒ„๋Š” 100% Rust๋กœ ์ž‘์„ฑ. SQLite๋Š” C ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์—ฐ๋™), unsafe ์ฝ”๋“œ ์‚ฌ์šฉ ์—†์ด ์•ˆ์ „ํ•˜๊ฒŒ ์„ค๊ณ„๋˜์–ด ์‹ ๋ขฐ์„ฑ ๋†’์Œ
  • Tokio, async-std, actix ๋“ฑ ์ฃผ์š” Rust ๋น„๋™๊ธฐ ๋Ÿฐํƒ€์ž„ ๋ฐ ๋‹ค์–‘ํ•œ TLS ๋ฐฑ์—”๋“œ์™€ ํ˜ธํ™˜๋˜๋ฉฐ, ํ”Œ๋žซํผ ๋…๋ฆฝ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ
  • MIT/Apache 2.0 ๋“€์–ผ ๋ผ์ด์„ ์Šค๋กœ, ์˜คํ”ˆ ์†Œ์Šค ๋ฐ ์ƒ์—…์  ํ”„๋กœ์ ํŠธ์— ํญ๋„“๊ฒŒ ํ™œ์šฉ ๊ฐ€๋Šฅ

Features

  • sqlx::Pool์„ ์ด์šฉํ•œ ์ปค๋„ฅ์…˜ ํ’€๋ง
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ๋ฅผ ๋น„๋™๊ธฐ Row ์ŠคํŠธ๋ฆฌ๋ฐ
  • ์ปค๋„ฅ์…˜๋ณ„๋กœ ์ž๋™ ์ฟผ๋ฆฌ ์ค€๋น„ ๋ฐ ์บ์‹ฑ
  • ์ค€๋น„๋˜์ง€ ์•Š์€(Prepared ์•„๋‹Œ) ์ฟผ๋ฆฌ๋„ ๊ฐ„๋‹จํžˆ ์‹คํ–‰ ๊ฐ€๋Šฅ, ๊ฒฐ๊ณผ๋Š” ๋™์ผ Row ํƒ€์ž…์œผ๋กœ ๋ฐ˜ํ™˜
  • ์ง€์›ํ•˜๋Š” DB(MySQL, MariaDB, PostgreSQL)์—์„œ TLS ์•”ํ˜ธํ™” ์—ฐ๊ฒฐ ์ง€์›
  • ๋น„๋™๊ธฐ PostgreSQL ์•Œ๋ฆผ ์ง€์› : LISTEN๊ณผ NOTIFY
  • ์„ธ์ด๋ธŒํฌ์ธํŠธ(Savepoint)๋ฅผ ํ™œ์šฉํ•œ ์ค‘์ฒฉ ํŠธ๋žœ์žญ์…˜ ์ง€์›
  • ๋Ÿฐํƒ€์ž„์— DB ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์„ ํƒ์ ์œผ๋กœ ๊ต์ฒด ๊ฐ€๋Šฅํ•œ AnyPool ์ง€์›

See also

Favorite site