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

एक एसक्यूएल कुल समारोह विकल्प के रूप में ट्रिगर्स का उपयोग करना?

सिद्धांत रूप में, एक ट्रिगर सारांश तालिका को सटीक रूप से तब तक अद्यतन रख सकता है, जब तक:

  • आप ट्रिगर को अक्षम नहीं करते हैं
  • आप सीधे सारांश तालिका को अपडेट नहीं करते हैं
  • आप TRUNCATE TABLE (जैसा आपने नोट किया है) के माध्यम से स्रोत डेटा में परिवर्तन नहीं करते हैं

इसके अलावा:

  • आपको सारांश तालिका को सही प्रारंभिक मान के साथ सीड करना होगा
  • आपको स्रोत तालिका और सारांश तालिका दोनों के लिए InnoDB का उपयोग करना चाहिए, इसलिए अद्यतन परमाणु हैं

सारांश तालिका को बनाए रखना denormalization का एक उदाहरण है। . जैसा कि सभी सामान्यीकरण के साथ होता है, यह डेटा विसंगतियों का जोखिम उठाता है। आप डेटा अखंडता बनाए रखने के लिए जिम्मेदार हैं; डेटाबेस सीमित है कि यह आपको ऐसा करने में कितनी मदद कर सकता है।

मेरा सुझाव है कि आपको यह सुनिश्चित करने के लिए समय-समय पर सारांश तालिका को दोबारा जांचना होगा (उदाहरण के लिए प्रति घंटा पर्याप्त हो सकता है) यह सुनिश्चित करने के लिए कि यह सिंक से बाहर नहीं गया है, और यदि यह है तो इसे सही करें। ऐसा करना आप पर निर्भर करता है, क्योंकि डेटाबेस आपके लिए इसकी जांच नहीं कर सकता है।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql:कैसे एक तालिका में शामिल होने के लिए लेकिन उच्चतम वोट या गिनती के साथ 1 परिणाम में शामिल होने की सीमा?

  2. AWS RDS पर MySQL डेटाबेस और Oracle डेटाबेस के साथ JDeveloper का उपयोग करना, भाग 1

  3. एक MySQL डेटाबेस से डेटा निर्यात करें

  4. mysql_num_rows($result) 1 क्यों लौटाता है, भले ही $result खाली परिणाम सेट करता हो?

  5. मैं कैसे जांचूं कि PHP पहले से किसी डेटाबेस से कनेक्ट है या नहीं?