Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
SanSYSpationSanSYS, вообще проблема только в том что, разработа идёт на продакшене вовсе нет, разработка ведется на локальной машине я вообще не полностью понимаю ваше утверждение, будьте добры раскрыть тема топа: "SELECT *" в продакшене , как с этим бороться? я под продакшеном понимаю оттестированную версию кот. находится у закащика у вас процесс тестирования наличиствует? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2012, 12:29 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
pationу вас процесс тестирования наличиствует? Конечно, но тестируется конечный результат, кодревью особо делать некому :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2012, 13:05 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
авторУгу, а потом кому-то приспичело добавить пяток новых столбцов в табличку... Код: c# 1. 2. 3. Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. + 3 запроса, при одном открытом соединении, не такая уж большая беда - ваши ORM так и поступают на каждом шагу! ИМХО - .NET программистов нужно с осторожностью допускать к разработке , бо любой из них - архитектор "мама не горюй" (безразлично в какой области ;)! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2012, 13:16 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
SELECT *+ 3 запроса, при одном открытом соединении, не такая уж большая беда - ваши ORM так и поступают на каждом шагу! ИМХО - .NET программистов нужно с осторожностью допускать к разработке , бо любой из них - архитектор "мама не горюй" (безразлично в какой области ;)! Ну на счет ORM-ов это к MCУ, я сам далеко не большой их сторонник. А насчет дотнетчиков... видовали косяки и у делфистов и у джавистов, да у кого только не видовали, даже у клиперистов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2012, 14:46 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
<off>дело не в косяках, а в образе мышления!</off> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2012, 16:46 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
ПарамонКнечно это бестпрактис, но бывает, что нет смысла прописывать кучу полей, когда нужны почти все. Смысл в том, что если поля не указать явно, то сервер их выбирает дополнительным запросом, в результате запрос становится тяжелее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2012, 18:33 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
SELECT * ваши ORM так и поступают на каждом шагу! Поступают не ORM, а те кто с ним работатет. К примеру, в нормальном запросе это выглядт так: Код: c# 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2012, 19:35 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
StarlexСмысл в том, что если поля не указать явно, то сервер их выбирает дополнительным запросом, в результате запрос становится тяжелее. В ненагруженных приложениях, это роли не играет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2012, 19:36 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
EDUARD SAPOTSKIПарамонЕсли мне, к примеру нужно 10 из 13 полей одной таблички, бывает пишу "SELECT *", что за крайности? ) Угу, а потом кому-то приспичело добавить пяток новых столбцов в табличку... А если приспичило убрать пяток? ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2012, 19:46 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
авторК примеру, в нормальном запросе это выглядт так: ну ты понял!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2012, 20:37 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
ПарамонИзменения в базе, обычно влияют на все приложение. это последствия того же SELECT * , неквалифицированных имён столбцов и т д ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2012, 12:43 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
ПарамонEDUARD SAPOTSKIпропущено... Угу, а потом кому-то приспичело добавить пяток новых столбцов в табличку... А если приспичило убрать пяток? ;) тогда ошибка проявится при исполнении запроса, а не в последующем лапшекоде ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2012, 12:48 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
Изопропилтогда ошибка проявится при исполнении запроса А вот *, позволяет добавить/убрать поля в UI, не трогая запроса :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2012, 13:21 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
ПарамонИзопропилтогда ошибка проявится при исполнении запроса А вот *, позволяет добавить/убрать поля в UI, не трогая запроса :) Впервые вижу человека, выступающего за "SELECT *"... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2012, 15:07 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
ПарамонА вот *, позволяет добавить/убрать поля в UI, не трогая запроса :) Тогда проще сразу слить всю БД и уже локально дофильтровать для UI. А чё, зато вообще запросы не будет "трогать" запросы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2012, 15:40 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
Как уже написал, в выборке из большой таблицы, где нужны все или почти все поля, допускаю, осознанное исползование *, в этом есть свои плюсы. В большинстве случаев - это антипаттерн. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2012, 16:19 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
Вот так где нибудь этот запрос останется. Про него все забудут. Со временем таблица разрастётся ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2012, 23:43 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
Особенно будет радостно, если в эту таблицу позже добавят блоб :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2012, 23:49 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
авторВот так где нибудь этот запрос останется. Про него все забудут. Со временем таблица разрастётся ... авторОсобенно будет радостно, если в эту таблицу позже добавят блоб :) притянутая за уши ситуация! столбцы в таблице у вас растут\убывают как грибы по осени!? + 13542234 с таким же успехом, можно сказать, что наименования столбцов может меняться в зависимости от настроения проггера - раза три-четыре в сутки... что же теперь все запросы переписывать?! ИМХО - ничего предосудительного в осознанном использовании SELECT * нету! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2012, 11:31 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
МСУОсобенно будет радостно, если в эту таблицу позже добавят блоб :) Если добавляем поле, значит готовы с ним работать. ) Кстати, как вы с linq делали delete или update? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2012, 11:40 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
SELECT *притянутая за уши ситуация! столбцы в таблице у вас растут\убывают как грибы по осени!?[/quot] Ситуация из жизни, а не из притянутых ушей - таблицы имеют привычку расти, как по столбцам так и по строкам. Я говорю о чем-то нереальном? SELECT *с таким же успехом, можно сказать, что наименования столбцов может меняться в зависимости от настроения проггера - раза три-четыре в сутки... что же теперь все запросы переписывать?! Прогера, а тем более его унылое настроение, никого не волнуют. Есть конкретная архитектура со схемой данных, за которую отвечает архитектор или кто-там еще. Если это лицо посчитает нужным допилить схему данных, значит так тому и быть. А мнение девелопера можешь засунуть в своё мусорное ведро и закрыть. SELECT *ИМХО - ничего предосудительного в осознанном использовании SELECT * нету! На конкретный момент времени - проблем нет. Проблемы появляются, как правило, позже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2012, 11:46 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
ПарамонКстати, как вы с linq делали delete или update? Может так? ) Insert, Update, and Delete Operations ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2012, 11:53 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
ПарамонЕсли добавляем поле, значит готовы с ним работать. ) А теперь судорожно начинаем править давнишний код, который отлично работает. Потом начинаем тестировать функционал заново. Потом появляются какие-то проблемы, потом всё рушится, потом мы плюёмся и начинаем править баги. Накуй мне такое щастье? ) ПарамонКстати, как вы с linq делали delete или update? По-разному. Удаление можно делать без извлечения, Update - с извлечением. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2012, 11:55 |
|
||
|
"SELECT *" в продакшене, как с этим бороться?
|
|||
|---|---|---|---|
|
#18+
авторСитуация из жизни, чьей? - твоей? ;))) так ты не разработчик БД - об том и речь! автор Есть конкретная архитектура со схемой данных , за которую отвечает архитектор или кто-там еще. ну дык! авторНа конкретный момент времени - проблем нет. Проблемы появляются, как правило, позже. проблемы могут появиться как с использованием запроса SELECT * так и при запросе с перечислением столбцов! одно другому не помеха! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2012, 11:59 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=38062292&tid=1358993]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
43ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 205ms |
| total: | 311ms |

| 0 / 0 |
