הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 19-12-11, 11:00   # 1
Kernel
אושיית הוסטינג
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: בקעת אונו
הודעות: 2,429

Kernel לא מחובר  

שאילתת Mysql לא תקינה

יש שאילתה שמאפשרת למשתמש למחוק את הפרופיל שלו מהמערכת,
אני מעוניין למחוק את השורה בכל טבלה שה-UID הוא 200.
הטבלאות במסד הן: signup, users_blocks, users_flags, users_online, users_prefs

ככה זה כתוב היום (וזה לא עובד) שאילתת מחיקה ליוזר מס' 20:
קוד:
DELETE FROM signup, users_blocks, users_flags, users_online, users_prefs WHERE UID = 200;
עזרתכם בנושא,
תודה
אבי
__________________
אבי
  Reply With Quote
ישן 19-12-11, 11:38   # 2
Sagi
חבר וותיק
 
Sagi's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 33
הודעות: 1,745
שלח הודעה באמצעות ICO אל Sagi

Sagi לא מחובר  

מה השגיאה?
  Reply With Quote
ישן 19-12-11, 11:44   # 3
Kernel
אושיית הוסטינג
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: בקעת אונו
הודעות: 2,429

Kernel לא מחובר  

קוד:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE UID = 200' at line 1
__________________
אבי
  Reply With Quote
ישן 19-12-11, 12:41   # 4
Sagi
חבר וותיק
 
Sagi's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 33
הודעות: 1,745
שלח הודעה באמצעות ICO אל Sagi

Sagi לא מחובר  

לדעתי אתה אמור להגדיר בכל טבלה אידי

PHP קוד:
DELETE FROM signupusers_blocksusers_flagsusers_onlineusers_prefs WHERE signup.UID 200 and users_blocks.UID 200 and users_flags.UID 200 and users_online.UID 200 and users_prefs 200
  Reply With Quote
ישן 19-12-11, 14:21   # 5
Kernel
אושיית הוסטינג
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: בקעת אונו
הודעות: 2,429

Kernel לא מחובר  

ניסיתי כל מיני וריאציות ולא הצלחתי,
לגבי השאילתה שלך:
קוד:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE signup.UID = 200 and users_blocks.UID = 200 and users_flags.UID = 200 a' at line 1
אבי
__________________
אבי
  Reply With Quote
ישן 19-12-11, 15:18   # 6
satan
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 34
הודעות: 1,582

satan לא מחובר  

לפי מיטב זכרוני זה סתם מסובך למחוק בשיטה שאתה רוצה..

עדיף לך לדחוס שאילתות במכה אחת, זה שונה מלשלוח אותן שוב ושוב.
ז"א

DELETE FROM signup WHERE UID = 200;DELETE FROM signup WHERE UID = 200;DELETE FROM table3 WHERE UID = 200;

* חשוב שתסיים את השאילתא ב ; ותתחיל אחת חדשה
__________________
פנוי לעבודה כמתכנת WEB - למידע נוסף: ליאור אמסלם.
בניית אתרים באינטרנט - בלוג על בניית אתרים באינטרנט עם טיפים, מאמרים, מדריכי תכנות ועוד.
משחקים אתר משחקים
  Reply With Quote
ישן 19-12-11, 22:00   # 7
SniR-S
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Aug 2008
הודעות: 546

SniR-S לא מחובר  

בכל טבלה קיים השדה UID ? אם כן, בכל טבלה הוא זהה ל ID של ה USER ?

אני שואל כי זה הכי הגיוני, ומה ששגיא כתב פה אמור לעבוד.
  Reply With Quote
ישן 20-12-11, 01:32   # 8
בניה
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: נחושה
הודעות: 3,434

בניה לא מחובר  

כשמדובר בכמה טבלאות אתה צריך להוסיף בין ה DELETE ל FROM את שמות הטבלאות/שדות כמו בSELECT
DELETE `signup`.*, `asd`.* FROM `signup`, `asd`
WHERE `UID` = 200

http://dev.mysql.com/doc/refman/5.0/en/delete.html
  Reply With Quote
ישן 25-12-11, 22:25   # 9
blackghost
חבר חדש
 
מיני פרופיל
תאריך הצטרפות: Dec 2011
הודעות: 25

blackghost לא מחובר  

למה שתרצה אגב למחוק נתון מהDATABASE?
אני פשוט עושה לו UPDATE לשדה STATUS 0.
אין למה למחוק שום נתון עדיף לשמור .
  Reply With Quote
ישן 26-12-11, 22:12   # 10
daNN
חבר בקהילה
 
daNN's Avatar
 
מיני פרופיל
תאריך הצטרפות: Jan 2011
גיל: 34
הודעות: 178

daNN לא מחובר  

ציטוט:
נכתב במקור על ידי blackghost צפה בהודעה
למה שתרצה אגב למחוק נתון מהDATABASE?
אני פשוט עושה לו UPDATE לשדה STATUS 0.
אין למה למחוק שום נתון עדיף לשמור .
מה אתה מדבר שטויות...
כאשר אין שימוש בנתון נחוץ למחוק אותו כמובן
מה הקטע בלשמור "זבל" על המסד נתונים?
מבזבז זיכרון ומעלה את זמן הריצה של השאילתות על הטבלה בצורה ניכרת.
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 09:50.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ