22-10-08, 19:04 | # 1 |
חבר וותיק
|
[MySQL] שגיאה ב Group..
אז ככה..
תכנתתי ללקוח מערכת כלשהי על המחשב שלי הכל עבד טוב ויפה.. ועכשיו אחרי התקנה של המערכת אצלו בשרת מופיעה השגיאה הבאה: קוד:
1111: Invalid use of group function קוד:
select `downloads`.`id`,`downloads`.`name`,avg(`ranks`.`rank`) as `rank` from `downloads` left join `ranks` on `ranks`.`download`=`downloads`.`id` group by `downloads`.`id` order by avg(`ranks`.`rank`) desc limit 4 עריכה: עוד שאלה.. האם השגיאה: קוד:
1203: User ***** has already more than 'max_user_connections' active connections כי הבנתי שהחיבור למסד נסגר אוטומטית בסיום הטעינה.
__________________
בברכה עובד, מפתח אתרים. Last edited by O-B; 22-10-08 at 19:19.. |
23-10-08, 05:47 | # 2 | |
חבר בקהילה
|
ציטוט:
אולי הבעיה היא בזה שאתה לא עושה ניתוק ממסד נתונים ואולי גם לא. אי אפשר להגיד כאן בוודאות. תנסה לברר אצל חברת אחסון\מנהל השרת מה הן ההגבלות של מספר החיבורים למסד נתונים. חוץ מזה, אם אין לך שימוש בTRANSACTIONS וLOCKS, אתה יכול להשתמש בפונקציה mysql_pconnect בזמן החיבור במקום mysql_connect. זה יפתח חיבור אחד קבוע והמערכת שלך תשתמש בחיבור זה בלי לפתוח חיבורים נוספים. http://il2.php.net/mysql_pconnect |
|
23-10-08, 13:56 | # 3 | |
חבר וותיק
|
ציטוט:
PHP קוד:
אז כל פעם שהעמוד נטען הוא פותח חיבור חדש או בכל סישן הוא מתחבר פעם אחת ועובד עם אותו חיבור כל פעם עד שיוצאים מהדפדפן? וומה בקשר לשאלה הראשונה?
__________________
בברכה עובד, מפתח אתרים. |
|
23-10-08, 15:17 | # 4 |
חבר מתקדם
|
בעקרון זה יכול להיות ככה
קוד:
include "mysql.php" ..... mysql_close($link); בקשר לשאלה הראשונה שלך כשמשתמשים בפונקציות בתוך שאילתות MYSQL זה יכול ליצור בעיות אם לא מגדירים את ה GROUP BY נכון במקרה שלך אתה עושה SELECT ומשתמש ב AVG ואחר כך מסדר אותם ב ORDER BY ושוב עושה AVG , למה? אפשר כבר להשתמש ב rank שהוחזר על ידי ה avg הראשון שנעשה. זה אמור לעבוד: קוד:
select `downloads`.`id`,`downloads`.`name`,avg(`ranks`.`rank`) as `rank` from `downloads` left join `ranks` on `ranks`.`download`=`downloads`.`id` group by `downloads`.`id` order `rank` desc limit 4 mysql.allow_persistent = off מוגדר ב on ולא off . עוד דבר לא פחות חשוב זה שיש לך אפשרות להגדיר את כמות המקסימום של ההתחברויות למרות שאתה לא אמור לקבל שגיאה כזאת אלה אם כן יש לך כמות אדירה של משתמשים. |
23-10-08, 20:41 | # 5 | |
חבר וותיק
|
ציטוט:
עזרת לי מאוד..
__________________
בברכה עובד, מפתח אתרים. |
|
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|