PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

тип изпълнение varchar(1) или smallint за съхраняване на състоянието Postgres

Според мен водиш грешна битка. Притеснявате се за въздействието върху производителността от съхраняването на цяло число вместо поле с един символ, което според мен е недалновидно мислене. Действителното въздействие върху производителността на цяло число срещу единичен знак е тривиално и се съмнявам, че това може да бъде измерено смислено. Според моя опит е по-важно да се намали когнитивното натоварване на разработчиците и потребителите на системата и по този начин е по-добре да се използват полета със знаци, които са достатъчно дълги, за да съдържат разумно описание на състоянието, вместо цифрови стойности или съкращения с един знак. Да не се налага да помните какво означава 1, 2, „A“ или „X“ е много полезно. Вместо тези съкратени стойности предлагам да използвате лесни за разбиране стойности като „ГОТОВ“, „АКТИВЕН“, „ОБРАБОТЕНО“, „ОТМЕНЕН“ и др.

Колкото до втората част на въпроса - не съвсем. Може да има тривиално време за преместване на по-дългия низ, но това е тривиално, освен ако не говорите за милиони стойности.

Успех.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Дата и час по подразбиране с Ecto &Elixir

  2. Вземете брой външни ключове от множество таблици

  3. Пивотна таблица за данни на час

  4. Релационните преводи не съществуват след мигриране към Rails 3.2.1

  5. Правила на PostgreSQL и проблем с nextval()/serial (много специфичен за PostgreSQL)