2013-12-16 9 views
5

पर मान डालने के दौरान रिकॉर्ड हटाएं मेरे पास डीबीबी वाहन का स्थान लॉग है जिसका अर्थ है कि प्रत्येक निर्देशांक डीबी में संग्रहीत किए जाएंगे। अब वाहन 1 के लिए, मान लें कि तालिका में 30 प्रविष्टियां हैं, जिसका अर्थ है 30 स्थान। अब जब 31 वें प्रविष्टि आता है, मैं चाहता हूँ पहली प्रविष्टि समाप्त करने के लिए, जिसका अर्थ है, प्रति वाहन स्थान लॉग की अधिकतम संख्या होना चाहिए 30.डेटाबेस

अभी डालने क्वेरी

mysqli_query($con, 
    "INSERT INTO $location_history 
    VALUES('$id','$lat','$lng','$pwd','$v1','$v2','$v3','$v4','$status')") 
or die("Count not insert to location history!"); 
+0

आपको इसे केवल MySQL में करना चाहिए। अपने वाहन 1 के लिए स्थान की PHP गिनती करें, और यदि यह> 30 है, तो सबसे पुराना (या जिसे आप नहीं चाहते हैं) को हटा दें, और फिर नया 'INSERT' हटा दें। – Thibault

+0

PHP में ऐसा करने के लिए: पिछला चयन करें, रिकॉर्ड की संख्या गिनें, और यदि वे 30 से अधिक हैं, तो पहले को हटाएं और उनका अपडेट करें। फिर अंतिम एक डालें –

उत्तर

10

आप का उपयोग करना चाहिए है एक trigger function जो प्रत्येक सम्मिलन पर काम करने जा रहा है, प्रविष्टियों की गणना करें, और यदि 30 से अधिक हैं, तो 30 से कम प्रविष्टियों तक सबसे पुराने लोगों को हटा दें।