Українська
Типові помилки
Типові помилки
У табл. 7.4 наведено помилки, яких найчастіше припускаються під час роботи з базами даних.
Таблиця 7.4. Типові помилки під час роботи з базами даних
| Проблема | Причина | Виправлення |
|---|---|---|
| SQL-ін’єкція, помилка синтаксису через апостроф в імені (O’Brien) | SQL складено конкатенацією або інтерполяцією рядків | параметри $1 і Parameters.AddWithValue |
Failed to connect to 127.0.0.1:5432 | служба PostgreSQL не запущена, неправильний порт або хост | запустити службу, перевірити рядок з’єднання в DataGrip |
| пароль потрапив у Git | рядок з’єднання записано в коді або appsettings.json | dotnet user-secrets, змінні середовища; змінити пароль |
The connection pool has been exhausted | з’єднання й читачі не звільняються | await using для з’єднань, команд, читачів |
умова = NULL не знаходить рядків | порівняння з NULL дає NULL | IS NULL, IS NOT NULL |
| половина змін збереглася після помилки | пов’язані команди виконано без транзакції | BeginTransactionAsync, CommitAsync |
| запити стають повільними зі зростанням таблиці | немає індексу для умови або з’єднання | CREATE INDEX для зовнішніх ключів і полів пошуку |