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

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

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 13-01-09, 13:35   # 1
Erez | TrustMedia.co.il
עסק רשום [?]
 
מיני פרופיל
תאריך הצטרפות: Jul 2008
הודעות: 1,854

Erez | TrustMedia.co.il לא מחובר  

קבלת ID בעת ההכנסה

אני רוצה לעשות בשאילתא אחת הכנסה למסד ולקבל את הID של השורה שהכנסתי באותה השאילתא
מישהו מכיר דרך?
__________________
  Reply With Quote
ישן 13-01-09, 13:39   # 2
vadimg88
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Feb 2008
גיל: 37
הודעות: 710

vadimg88 לא מחובר  

2 דרכים:

1. להשתמש ב mysql_insert_id דוגמא:

PHP קוד:
   mysql_connect("localhost""mysql_user""mysql_password") or
       die(
"Could not connect: " mysql_error());
   
mysql_select_db("mydb");

   
mysql_query("INSERT INTO mytable (product) values ('kossu')");
   
printf ("Last inserted record has id %d\n"mysql_insert_id()); 
2. לבצע שאילתה נוספת שתקח את ה MAX(id) ככה שתקבל את ה ID הכי גבוה -> האחרון שנוסף. (תקף רק אם ה id מוגדר ל auto_increment או שאתה מעלה אותו באחד כל הזמן).
  Reply With Quote
ישן 13-01-09, 13:44   # 3
Erez | TrustMedia.co.il
עסק רשום [?]
 
מיני פרופיל
תאריך הצטרפות: Jul 2008
הודעות: 1,854

Erez | TrustMedia.co.il לא מחובר  

מה בדיוק הפונקציה הזאת עושה?
היא מחזירה את האיידי של השאילתא האחרונה שהוכנסה?
__________________
  Reply With Quote
ישן 13-01-09, 13:50   # 4
vadimg88
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Feb 2008
גיל: 37
הודעות: 710

vadimg88 לא מחובר  

ציטוט:
mysql_insert_id — Get the ID generated from the previous INSERT operation
http://il2.php.net/mysql_insert_id
  Reply With Quote
ישן 13-01-09, 13:52   # 5
Erez | TrustMedia.co.il
עסק רשום [?]
 
מיני פרופיל
תאריך הצטרפות: Jul 2008
הודעות: 1,854

Erez | TrustMedia.co.il לא מחובר  

אוקיי תודה רבה
__________________
  Reply With Quote
ישן 13-01-09, 18:47   # 6
Adir
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Feb 2006
הודעות: 685
שלח הודעה באמצעות MSN אל Adir

Adir לא מחובר  

תגידו, יש סיכוי שMAX(id) יחזיר בטעות ID של המשתמש אחר שנרשם באותו רגע ?
  Reply With Quote
ישן 13-01-09, 19:03   # 7
intercooler3819
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Jul 2008
הודעות: 1,056

intercooler3819 לא מחובר  

כמובן..
במערכות במימדים עצומים לדוגמא פייסבוק שנרשמים נניח 1000 איש בשניה (מספר רנדומלי ושקרי לחלוטין) אי אפשר להשתמש בשתי שאילתות
__________________
  Reply With Quote
ישן 13-01-09, 21:42   # 8
vadimg88
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Feb 2008
גיל: 37
הודעות: 710

vadimg88 לא מחובר  

כן במקרה כזה עדיף להשתמש ב LAST_INSERT_ID() ככה זה יחזיר את המספר האחרון שנוסף. וגם אם נוספו 2 רשומות באותו רגע אחת לא יכולה להתחלף עם השנייה בטעות או בזדון.
  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. הזמן כעת הוא 00:57.

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