Sobes.tech
Middle+

Hogyan terveznéd meg egy SQL-lekérdezést az adatbázishoz ORM használata nélkül?

sobes.tech MI

Válasz az MI-től

Az adatok lekérdezéséhez a users táblából, ahol az is_active mező értéke true, és a role 'admin':

SELECT id, username, email
FROM users
WHERE is_active = TRUE AND role = 'admin';

Új rekord beszúrása a products táblába:

INSERT INTO products (name, price, category_id)
VALUES ('New Product', 19.99, 10);

A orders tábla rekordjának frissítése, állapotának beállítása 'shipped'-re a id = 100 rendeléshez:

UPDATE orders
SET status = 'shipped'
WHERE id = 100;

A comments tábla rekordjának törlése id alapján:

DELETE FROM comments
WHERE id = 500;

Egyszerű összekapcsolás a users és orders táblák között user_id alapján:

SELECT u.username, o.order_date, o.total_amount
FROM users AS u
JOIN orders AS o ON u.id = o.user_id;

Tervezéskor fontos figyelembe venni:

  • Biztonság: Használjon paraméterezett lekérdezéseket az SQL-injekciók megelőzése érdekében.
  • Teljesítmény: Optimalizálja a lekérdezéseket indexek használatával, kerülje a SELECT *-t, és ellenőrizze a végrehajtási terveket.
  • Átláthatóság: Formázza a lekérdezéseket, használjon aliasokat a táblákhoz és mezőkhöz.
  • Tesztelés: Tesztelje a lekérdezéseket különböző szcenáriókban és adatmennyiségekkel.

Példa paraméterezett lekérdezésre (koncepcionális, a megvalósítás nyelvtől és driver-től függ):

// Felhasználó lekérdezése ID szerint
SELECT id, username FROM users WHERE id = ?;