שפת php וmysql

Any991

New member
שפת php וmysql

שלום לכולם,
הורדתי mysql workbench (אני מנחש שזו הגרסה החינמית שפוצלה אחרי שאורקל קנו אותם) כדי שאוכל לעבוד מהמחשב האישי ולבנות בסיס נתונים. ה-erd שלי מוכן בעיקרון ונשאר לי רק לכתוב בסיס נתונים מייצג למערכת שאני רוצה לעשות. לתוכנה יש אפשרות של כתיבת scripts-ניסיתי לכתוב (ועוד לא להריץ) שאילתות sql וגם שאילתות כאלו בסקריפט שכתוב ב php אבל מייד הוא מסמן לי שגיאות כתיבה (איקס בתוך ריבוע אדום) לרוב שורות הקוד והקוד הוא קצר מאוד-רק רציתי לראות אם זה עובד.
האם זה לא תומך בphp? בsql בסיסי זה בטוח תומך אז למה השגיאות? האם יש משהו שאני לא מבין בהגדרות או משהו כזה?
 

pitoach

New member
מסדי נתונים טבלאיים לא מריצים קוד PHP ולא קוד C# בדרך כלל

אלא שאילתות בשפות כמו XML או T-SQL או PL ועוד (MySQL לא תומך ב PHP, בדיוק כמו ש SQL Server לא תומך ב C#).

* כל מסד נתונים נפוץ ובטח אלו של השרתים כמו MySQL או אורקל או SQL Server מאפשרים עבודה מול כל השפות הנפוצות כולל PHP. הקשר בין המסד נתונים לבין השפה נעשה בעזרת provider. כל מה שצריך זה שפה שיש לה מתאם מתאים (Provider מתאים למסד הנתונים). כאמור בכל השפות הנפוצות יש provider-ים לכל המסדי נתונים הנפוצים.

אני ממליץ לך קודם לתרגל מעט עבודה מול מסד הנתונים בעזרת שאילתות ורק בשלב הבא לעבור לשליחת שאילתות דרך שפת פיתוח אל המסד נתונים (אל מסד הנתונים בכל מקרה שולחים שאילתות, כאמור).
 

pitoach

New member
* תיקון הקלדה קטן: XML אמור להיות SQL

במשפט: "אלא שאילתות בשפות כמו XML"
התכוונתי לרשום SQL, ובהמשך TSQL וכו,
כפי שרמשתי בשאר ההודעה
 

נתן.ל

New member
mysql workbench זו תוכנה לניהול שרת מסד הנתונים מסוג MySQL

סקריפטים לקשר עם מסד הנתונים יכתבו בה בעזרת השפה שמסד הנתונים מבין, דהיינו SQL.
&nbsp
מסד נתונים רלציוני בדר"כ מבין אך ורק שפת SQL, זו השפה איתה אמורים לתקשר איתו. אתה אפילו לא חייב את הworkbench בשביל זה, בהחלט אפשרי לכתוב שאילתות SQL גם מתוך הcommand line(הקש CMD בחלון RUN של ווינדואוז).
&nbsp
בשביל להריץ שפה תכנות, כגון PHP, אתה צריך מהדר(קומפיילר בעברית
) אשר יודע לתרגם שפת תכנות זו לשפת מכונה ולהריצה. אחרי כן תוכל להשתמש בשפת תכנות חיצונית (PHP, Python, או כל דבר אחר) בשביל להתחבר אל מסד הנתונים(עם ADO כלשהו) ולהריץ מתוך שפת התכנות את הפקודות אל מסד הנתונים בשפת SQL.
&nbsp
להמשך עיון אתה מוזמן להכנס לאתר הזה וללמוד עוד: http://dev.mysql.com
&nbsp
בהצלחה
&nbsp
 

IT goldman

New member
למה לא להשתמש ב- WAMP ? גרסה חופשית וחינמית לווינדוס

וזה כולל mysql וגם php
&nbsp
 

Any991

New member
אז בהקשר הזה

הורדתי את WAMP ובאמת לא שמתי לב שהדבר הזה היה לי מתחת לאף (ככל הנראה זה לא עובד בוינדווס 8).
בכל מקרה, אחרי שהתקנתי, יש ברשותי מסד נתונים רלציוני שנעשה בmysql workbench. האם אני יכול לעשות לו import ולכתוב לו script של php בlocalhost? ניסיתי לעשות import לקובץ אבל אני לא מוצא את זה ואני מנחש ששוב פעלתי לא נכון איכשהו (ככה זה כשנזרקים למים בנושא הזה) . עזרה..
 

pitoach

New member
אני ממליץ לך לקרוא את כל ההודעות מעל

אתה שוב פעם שואל על כתיבת PHP בשרת מסדי נתונים, אם אני מבין אותך.
&nbsp
אתה יכול לכתוב סקריפט ב PHP אם אתה רוצה. אתה יכול לפתח אפליקציות בכל שפה שאתה רוצה, אחרי שלמדת אותה. שרת ה MySQL לא מכיר PHP, אבל PHP "מכיר" את MySQL (כל שפת פיתוח נפוצה "מכירה" את MySQL, אני עובד למשל עם שפת C# כדי לגשת לשרת MySQL).
&nbsp
* אם אתה צריך עזרה לגבי PHP אז כדאי למצוא פורום של PHP, אין לזה שום קשר לפורום כאן.
* אם אתה צריך עזרה בכתיבת שאילתות ל MySQL בשפה שהוא מבין אז אתה צריך ללמוד שפת SQL ובזה אנחנו יכולים לעזור לך.
 

pitoach

New member
תוכנה מעולה! אני נעזר בגרסת ה portable שלה

אני מחזיק אותה בדיסק-און-קי לכל מצב,
דרך אגב לא בשביל MySQL בהכרח, אלא בעיקר בשביל SQL Server כשאני מגיע בטעות למקום שיש שרת חי בלבד ולא התקינו SSMS למשל, וצריך לבצע פעולה קטנה אז זה כלי טוב מאוד להתחבר לשרת בצורה גרפית.
הייתרון הגדול שלה לדעתי זה ה portable, זה שלא צריך להתקין אותה.
* נבדקה על ידי מ XP ועד windows server 2012 r2 ואצלי לפחות עבדה טוב על כל מערכת שיצא לי להריץ אותה.

** אם יש תוכנה יותר ייעודית כמו workbench או PHPMyAdmin אז אני לא מוצא לה שימוש מעשי ומעדיף את התוכנות הייעודיות (אולי כי אין לי בה נסיוןם מספיק והיא רק משמשת אותי לפעולות קטנות, לא ביצעתי בדיקה מקיפה של האפשרויות שלה אף פעם)
 

pitoach

New member
חשבתי על זה רגע עכשיו ולצרכי לימוד היא אולי אפילו יותר טובה

משימוש ב SSMS

בניגוד ל SSMS היא מראה בפועל את השאילות שמריצים בכל פעולה. למשל אם לוחצים על החץ כדי לצפות ברשימת הטבלאות אז היא כמובן צריכה לשלוח שאילתה לשרת. ב SSMS זה נעשה בצרה נסתרת ובשביל הלךימוד צריך להפעיל פרופיילר כדי לראות מה נשלח לשרת. ב HeidiSQL אין צורך כי לפני שהיא שולחת שאילתה היא רושמת אותה בחלון המתאים

לא עשיתי בה שימוש עד היום ללימוד/הרצאות, אבל אולי אני אתחיל לחשוב על כיוון כזה...
 
למעלה