172 похожих чатов

Всем привет, нужен совет Началась борьба за нейминг в БД И

так разработчики работают в ОРМ и используют правило
createdAt
updatedAt
userID
Я считаю, что это не правильно так как в дальнейшем будет куча гемороя с написанием SQL запроса
предлагаю им перейти на правильно
created_at
updated_at
user_id
Но начались какие-то баталии, как переубедить разработчиков? Может вы сталкивались с неймингом и такой бедой?
Спасибо!

22 ответов

21 просмотр

Попросите их по телефону прислать запрос в CamelCase

Ну так аргументы Ваши резонны (они же вот тут https://wiki.postgresql.org/wiki/Don%27t_Do_This#Don.27t_use_upper_case_table_or_column_names ), и что тут ещё скажешь? А что говорят они?

на сколько я помню. Когда писал на С/С++/microC -везде использовался формат createdAt updatedAt userID А вот, когда начал работать с СУБД, везде видел так created_at updated_at user_id Ну 1) Сообщество СУБДшников пишет так ( я про _ ) 2) Гораздо удобней смотреть, когда секции/слова отделяются именно _ 3) В СУБД поф*г на регистр ( если не писать " ), поэтому в СУБД вы увидите вместо create tableA - CREATE tablea А потом, когда будете смотреть скрипты на таблицы/функции, чтобы понять, как там всё устроено ( ведь поддержку кода никто не отменял) У вас начнётся головная боль :)

Chern-Oleksander Автор вопроса
Yaroslav Schekin
Ну так аргументы Ваши резонны (они же вот тут http...

нейминг должен отталкиваться от среды и задачи((

какой ORM они используют если не секрет?

Chern Oleksander
нейминг должен отталкиваться от среды и задачи((

Так среда и задача у них уже не одна (т.е. есть какое-то (какие-то) приложение и отдельно аналитика, как минимум), я правильно понял? Получается, все, кроме основного приложения — "граждане второго сорта"? ;)

Chern-Oleksander Автор вопроса
Yaroslav Schekin
Так среда и задача у них уже не одна (т.е. есть ка...

ну, типа нам так удобней, а дальше вы уже сами сделаете

Chern-Oleksander Автор вопроса

есть такое и нашли они сами, просто из-за этого нужно много чего переделывать, а желания нет

Chern Oleksander
ну, типа нам так удобней, а дальше вы уже сами сде...

Получается, что "вы" — таки граждане второго сорта. ;( Т.е. это уже не технический спор.

Chern-Oleksander Автор вопроса
Anton Krasnov
какой ORM они используют если не секрет?

Если вы за опцию CamelCase она там есть и её можно как включить как и выключить

Chern-Oleksander Автор вопроса
Yaroslav Schekin
Получается, что "вы" — таки граждане второго сорта...

))))) ну, как-то так, я просто больше хочу понять, правильно ли то что это нужно отстаивать ?!

Chern-Oleksander Автор вопроса

да, в этом и проблема, конечно там на 1,5к таблиц, а до 20 штук, но всё равно нужно альтерить и переписывать код

Chern-Oleksander Автор вопроса

еще появилось мнение, что каждый должен работать в своей удобной среде. Типа разрабы работают вот так, а ты данные потом как хочешь так и забирай, чтобы не нарушать их процесс...

Спросите у них, а представьте себе если бы им питон(тут нужно поставить правильный язык) шаблонный код генерировал код их языка в кодстайле "питона". Им было бы комфортно с таким работать?

Chern-Oleksander Автор вопроса
Егор miruzzy
на сколько я помню. Когда писал на С/С++/microC -в...

Вы не правы tableA нельзя сделать select * from tableA будет ошибка, что такая таблица не найдена будет работать только select * from "tableA"

Chern-Oleksander Автор вопроса
Егор miruzzy
я это знаю

Тогда вас не понял ((

Chern Oleksander
Вы не правы tableA нельзя сделать select * from t...

По умолчанию все идентификаторы преобразуются в lower case. Поэтому если написано create TableA (); то можно сделать и select * from tableA; и select * from TABLEA; А вот если вам хочется различать регистр, то надо использовать кавычки

Chern Oleksander
еще появилось мнение, что каждый должен работать в...

А Вы прямо на их базе отчёты делаете? Или есть ETL в другую? Если последнее, может, в самом деле сойтись на "ты данные потом как хочешь так и забирай" (и "у себя" как хочешь, так и представляй)?

Chern-Oleksander Автор вопроса
Yaroslav Schekin
А Вы прямо на их базе отчёты делаете? Или есть ETL...

будет ETL Просто если сейчас это займет больше чем 30 мин, тогда будет КАМЕЛ и я уже сам буду обрабатывать . Но хочется ж по правильному )

Егор miruzzy
на сколько я помню. Когда писал на С/С++/microC -в...

Пишем вот так, просто и понятно: create table "from" ( "select" varchar(100), "where" varchar(100), "group by" varchar(100), "order by" varchar(100) ); select "select", "where", "group by", "order by" from "from" where "where" = '=' group by "group by", "select", "where", "order by" order by "order by";

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта