PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

ईमेल पते को मान्य करने के लिए पोस्टग्रेज फ़ंक्शन

इन उत्तरों का एक समूह है करीब सही तरीके से। मेरे सबमिशन के लिए ये बिंदु हैं।

  • आप एक डोमेन का उपयोग करना चाहते हैं -- नियम प्रणाली नहीं।
  • आप इन ईमेल पतों को रेगेक्स से सत्यापित नहीं करना चाहते हैं। (अपडेट मार्च 2017:अब वास्तव में सच नहीं है)

मैं इसे DBA.StackExchange.com पर सही तरीके से करने के दो तरीके दिखाता हूं . दोनों एमएक्स-रिकॉर्ड की जांच करने के लिए, और एचटीएमएल 5 स्पेक का उपयोग करने के लिए भी। ये रहा शॉर्ट एंड स्वीट।

CREATE EXTENSION citext;
CREATE DOMAIN email AS citext
  CHECK ( value ~ '^[a-zA-Z0-9.!#$%&''*+/=?^_`{|}~-][email protected][a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$' );

SELECT '[email protected]'::email;
SELECT CAST('[email protected]' AS email);

अधिक जानकारी के लिए मैं अत्यधिक आपको जवाब को पूरा पढ़ने का सुझाव दें . उत्तर में, मैं यह भी दिखाता हूं कि आप DOMAIN कैसे बनाते हैं अधिक Email::Valid , और समझाएं कि मैं अब उस पद्धति का उपयोग क्यों नहीं करता।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgresql और psycopg2:डेटाबेस मौजूद नहीं है

  2. पोस्टग्रेस्क्ल जोंस टाइप में बाइटा डालें

  3. कैसे पता लगाएं कि दिए गए कॉलम के लिए अद्वितीय कुंजी बाधा मौजूद है या नहीं?

  4. संदेश सरणी में अंतिम संदेश दिखाएं

  5. क्या PostgreSql में सरणियों के फ़ील्ड प्रकार के बजाय तालिकाओं का उपयोग करना बेहतर है जब सरणियाँ 50 तत्वों से अधिक न हों?