PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Refactor kunci asing ke bidang

Sepertinya Anda salah jalan. Skema asli Anda yang dinormalisasi biasanya lebih unggul. Jika Anda perlu menampilkan toko / pengguna, buat VIEW .

Tapi Anda mungkin punya alasan sendiri, jadi begini:

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

Jangan gunakan kata khusus "user" sebagai pengenal.
Dan "nama" hampir tidak pernah merupakan nama good yang baik , baik.
Dan varchar(255) di Postgres biasanya menunjukkan kesalahpahaman.

Tentang varchar(255) :

  • Haruskah saya menambahkan batas panjang sewenang-wenang ke kolom VARCHAR?
  • Apakah ada kerugian menggunakan tipe data "teks" untuk menyimpan string?
  • Detail selengkapnya ada di manual.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. IN vs operator APAPUN di PostgreSQL

  2. PostgreSQL:menggunakan kolom terhitung dalam kueri yang sama

  3. Jika hitungan PostgreSQL (*) selalu lambat, bagaimana cara membuat halaman kueri kompleks?

  4. tidak ada entri pg_hba.conf untuk host

  5. PostgreSQL:Menampilkan tabel di PostgreSQL