Sobes.tech
Middle+

Чӣ гуна шумо мепурсед, ки дархости SQL ба базаи додаҳо бидуни истифодаи ORM чӣ гуна тарҳрезӣ кунед?

sobes.tech AI

Ҷавоб аз AI

Барои гирифтани маълумот аз ҷадвали users, ки дар он майдони is_active баробар true ва role баробар 'admin' аст:

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

Барои ворид кардани сабтҳои нав ба ҷадвали products:

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

Барои навсозии сабт дар ҷадвали orders, гузоштани статус ба 'shipped' барои фармоиш бо id = 100:

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

Барои нест кардани сабт аз ҷадвали comments бо id:

DELETE FROM comments
WHERE id = 500;

Барои пайваст кардани асосӣ байни ҷадвалҳои users ва orders бо user_id:

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

Дар тарҳрезӣ, муҳим аст, ки ба назар гирифта шавад:

  • Бехатарӣ: Истифодаи пурсишҳои параметрӣ барои пешгирии SQL injection.
  • Камбудиҳо: Оптимизатсия кардани пурсишҳо бо истифода аз индексҳо, парҳез аз SELECT * ва санҷидани нақшаи иҷро.
  • Қитъаи хондан: Формат кардани пурсишҳо, истифодаи псевдониҳо барои ҷадвалҳо ва майдонҳо.
  • Тест: Санҷидани пурсишҳо дар сценарияҳои гуногун ва ҳаҷми маълумот.

Масалан, пурсиши параметрӣ (концептуалӣ, татбиқ вобаста ба забон ва драйвер):

// Масалан барои гирифтани корбар бо ID
SELECT id, username FROM users WHERE id = ?;