Anggap saja saya ingin menyimpan nomor telepon dalam basis data. Saya dapat menerima nomor telepon dari luar Amerika Serikat. Bagaimana cara saya menyimpan nomor-nomor ini?
postgresql
datatypes
data-integrity
data-validation
Evan Carroll
sumber
sumber
Jawaban:
libphonenumber
Bila memungkinkan selalu gunakan bentuk kanonik. Semakin dinormalisasi bentuknya semakin baik. Jika ada standar, gunakan itu. Untuk masalah ini, mari gunakan Google libphonenumber , dengan proksi pg-libphonenumber .
Saat ini menginstal
phone_number
jenis yang memiliki operator perbandingan dan fungsi. Ini menyimpan nomor dalam bentuk kanonik internasional. Ini adalah kompromi terbaik menurut saya.Karena kita dapat mengetahui kapan nomor telepon sama dan kita memberikan bentuk normal internal, kita dapat melakukan ini ..
(mengembalikan true). Ini juga berarti
DISTINCT
bekerja sehingga kami dapat melakukan ini untuk mendapatkan efek yang Anda inginkan di atas.Itu menempatkan ..
sumber