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

Рефакториране на външния ключ към полета

Изглежда вървиш в грешен път. Вашата оригинална, нормализирана схема обикновено е по-добра. Ако трябва да покажете магазин/потребител, създайте VIEW .

Но може да имате своите причини, така че ето:

UPDATE purchases p
SET   (shop, shop_user) = (s.name, s."user")
FROM   shop s
WHERE  s.id = p.shop_id;

Не използвайте запазената дума "user" като идентификатор.
И „име“ едва ли е добро име , или.
И varchar(255) в Postgres обикновено показва недоразумение.

Относно varchar(255) :

  • Трябва ли да добавя ограничение за произволна дължина към колоните VARCHAR?
  • Някакви недостатъци при използването на тип данни „текст“ за съхранение на низове?
  • Повече подробности в ръководството.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да UPSERT (СЛИВАНЕ, ВМЕСВАНЕ ... ПРИ ДУБЛИРАНЕ НА АКТУАЛИЗИРАНЕ) в PostgreSQL?

  2. Автоматично увеличаване на частичен първичен ключ с Entity Framework Core

  3. Вмъкване при дублирана актуализация в PostgreSQL?

  4. PostgreSQL управление и автоматизация с ClusterControl

  5. как да изпълним .sql скрипт на heroku?