ABA


"צריך עזרה עם שרת של MYSQL בשילוב עם ASP.NET"
גירסת הדפסה        
קבוצות דיון בניית אתרים נושא #12240 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 12240
lior066

דרג אמינות חבר זה
   15:15   07.06.07   
אל הפורום  
  צריך עזרה עם שרת של MYSQL בשילוב עם ASP.NET  
 
   מה המצב אנשים , אז ככה אחרי שקלטתי ש ACCESS לא יעמוד כמו שצריך בלחצים של מה שאני מתכנן , החלטתי לעבור למשהו טיפה יותר מקצועי מבחינת תפוסה של אנשים.

עברתי ל MYSQL , עכשיו יש לי בעייה מוזרה במיוחד , ולא יודע למה אבל תמיד לי יש את הבעיות האלה אם תשימו לב מבחינת התכנות הכל הולך לי טוב מבחינת שגיאות לא מוכרות הכל נופל עליי ח.

טוב אז ככה יש לי הרצה של מספר שאילתות , אחרי דיבוג רציני של האתר צימצמתי את כל הסגירות של החיבורים מה שלא יכולתי לראות ב ACCESS שגם תקע אותי הרבה.
עכשיו מתי שהשאילתות במצב שלא סויים כפי שידוע הוא לא גומר לטעון את הדף כי הוא עדיין לא סיים לטעון את הקוד... , די בעייתי !

עכשיו אני מגיע למצב שבו אני משתמש בשאילתה לשליפת תוכן של כתבה נגיד , אם אני מריץ אותה על השרת של ה MYSQL דרך הQUARY BROWSER הכל טוב ויפה תשובה תוך מאית השנייה , אבל מתי שאני מריץ אותה דרך הASP משום מה הוא נכנס לי למצב של SLEEP אחרי ההרצה, עברתי על הקוד 100 פעמים כדי לראות שאני סוגר את כל החיבורים ובאמת הכל סגור מבחינת חיבורים אין מצב ששכחתי משהו, כמה שהפרוייקט גדול, רוב החיבורים נמצאים במודל אחד מרכזי ששולט בכל האתר.

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

מה אני עושה בצב שכזה ? בדקתי כמעט כל מצב של אפשרות לוגים של הMYSQL ומשום מה הוא לא נותן לי לראות את השאילתה שרצה במצב של ה SLEEP..

אני ממש תקוע פה וצריך עזרה ..


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


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  מישהו... lior066 08.06.07 12:07 1
  תאכלס אני אשמח לעזור לך ScOrPiOn-m1  08.06.07 16:00 2
     אין מה להעלות .. אבל בכל מקרה.. lior066 09.06.07 16:49 3
  רגע זה בשאילתה ספציפית? או כל פעם שאתה ניגש לMYSQL Sn00py  09.06.07 18:22 4
     שאילתה ספציפית... lior066 09.06.07 19:22 5
         אני חושב ש.. Morishani 09.06.07 19:56 6
             הבעייה היא שהיא כן מחזירה ערכים... lior066 09.06.07 19:59 7
                 וקורה מצב שיש timeout אחרי X שניות? Morishani 09.06.07 20:04 8
                     זהו שאין לי אפילו טיימאוט.. lior066 09.06.07 20:08 9
                         נסה להוריד גרסא חדשה יותר של Mysql ושל ה Morishani 09.06.07 20:15 10
                             יש לי קונקטור חדש.. הגרסא האחרונה ניסתי כבר להחליף.. lior066 09.06.07 20:17 11
                             התקנתי את הגרסא של האלפה.. lior066 09.06.07 20:56 12
  חברה עליתי על הבעייה.. אבל .. כנסו שנייה.. lior066 10.06.07 13:42 13
     אף פעם לא לסמוך על הכלים האוטומטים האלה Sn00py  10.06.07 13:46 14
     כן הכל הסתדר לי .. lior066 10.06.07 13:49 15

       
lior066

דרג אמינות חבר זה
   12:07   08.06.07   
אל הפורום  
  1. מישהו...  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ScOrPiOn-m1 
חבר מתאריך 26.11.10
7 הודעות, דרג אמינות חבר זה
   16:00   08.06.07   
אל הפורום  
  2. תאכלס אני אשמח לעזור לך  
בתגובה להודעה מספר 0
 
   אבל תפרט יותר ספציפי מה הבעיה שלך .. או שתעלה את הקוד שאני אוכל לעבור עליו. כי אתה דיי מדבר באוויר. תראה משהו שניתן לנגוס בו.
למרות שלא עסקתי בMYSQL ורק בMS SQL SERVER ובORACLE...
אני מאמין שאוכל לעזור לך


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
lior066

דרג אמינות חבר זה
   16:49   09.06.07   
אל הפורום  
  3. אין מה להעלות .. אבל בכל מקרה..  
בתגובה להודעה מספר 2
 
   ערכתי לאחרונה בתאריך 09.06.07 בשעה 16:50 בברכה, lior066
 
טוב זה המודל שמטל לי במסדי נתונים, התחברות והרצת שאילתות:


Imports System
Imports System.Data
Imports System.Data.Odbc
Imports System.IO
Imports MySql.Data.MySqlClient


Namespace DataAccessLayer
Public Class OleDB
Private x As OdbcDataReader

Private mvarCommandObject As MySqlCommand
Private mvarConnectionObject As MySqlConnection
Private mvarSQLString As String
Private mvarConnectionString As String
Private mvarRecordsAffected As Integer
Private mvarCommandTimeOut As Integer = 15


Public Property ConnectionString() As String
Get
ConnectionString = mvarConnectionString
End Get
Set(ByVal Value As String)
mvarConnectionString = Value
End Set
End Property


Public Property SQLString() As String
Get
SQLString = mvarSQLString
End Get
Set(ByVal Value As String)
mvarSQLString = Value
End Set
End Property


Public Property ConnectionObject() As MySqlConnection
Get
ConnectionObject = mvarConnectionObject
End Get
Set(ByVal Value As MySqlConnection)
mvarConnectionObject = Value
End Set
End Property


Public Property CommandObject() As MySqlCommand
Get
CommandObject = mvarCommandObject
End Get
Set(ByVal Value As MySqlCommand)
mvarCommandObject = Value
End Set
End Property


Public Property RecordsAffected() As Integer
Get
RecordsAffected = mvarRecordsAffected
End Get
Set(ByVal Value As Integer)
mvarRecordsAffected = Value
End Set
End Property


Public Property CommandTimeOut() As Integer
Get
CommandTimeOut = mvarCommandTimeOut
End Get
Set(ByVal Value As Integer)
mvarCommandTimeOut = Value
End Set
End Property


Public Function Execute(ByVal strs As String) As String
mvarSQLString = strs
mvarConnectionString = "Data Source=localhost;Database=scms;User ID=root;Password=6237066;"
mvarConnectionObject = New MySqlConnection(mvarConnectionString)
mvarConnectionObject.Open()
mvarCommandObject = New MySqlCommand()
mvarCommandObject.CommandType = CommandType.Text
mvarCommandObject.CommandTimeout = CommandTimeOut
mvarCommandObject.CommandText = mvarSQLString
mvarCommandObject.Connection = mvarConnectionObject
Try
mvarRecordsAffected = mvarCommandObject.ExecuteNonQuery
Return "OK"
Catch Ex As Exception
Return Ex.ToString
End Try

mvarConnectionObject.Close()
mvarCommandObject = Nothing
mvarConnectionObject = Nothing
mvarSQLString = Nothing
End Function

Public Sub close()
mvarConnectionObject.Close()
mvarCommandObject = Nothing
mvarConnectionObject = Nothing
mvarSQLString = Nothing
End Sub
End Class
End Namespace


וזה הקטע קוד שהוא נתקע לי במחלקה שאני רוצה לשלוף ממנה את הנתונים הסציפיים:
כל השאר עובד לי טוב , ודי מוזר הוא שאם אני שם ב ID -1 זה גם עובד לי..
כלומר אם הוא לא מחזיר לי תוצאות מהשאילתה , וזה רק בשאילתה הספציפית הזאת כל השאר עובדות לי...


Public Function GetCon(ByVal ID As Integer) As String
'On Error GoTo err
Dim StrTemp As String = ""
STRSQL = "SELECT Content.Con, Content.ID FROM(Content) WHERE (Content.ID)=" & ID & ";"
If Database.Execute(STRSQL) = "OK" Then
rs = Database.CommandObject.ExecuteReader()
If rs.HasRows = False Then
rs.Close()
Database.close()
Return "שגיאה! , או שאין ערך לדף זה."
Exit Function
Else
rs.Read()
StrTemp += rs("Con")
rs.Close()
Database.close()
Return StrTemp.Replace("||||", "'")
End If
Database.close()
End If
err:
Database.close()
Return False
End Function


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Sn00py 
חבר מתאריך 1.8.02
2954 הודעות, דרג אמינות חבר זה
   18:22   09.06.07   
אל הפורום  
  4. רגע זה בשאילתה ספציפית? או כל פעם שאתה ניגש לMYSQL  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 09.06.07 בשעה 18:23 בברכה, Sn00py
 

\x6C\x65\x65\x74\x68\x61\x78\x30
\x72\x3A\x2D\x29
tresp4sser


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
lior066

דרג אמינות חבר זה
   19:22   09.06.07   
אל הפורום  
  5. שאילתה ספציפית...  
בתגובה להודעה מספר 4
 
   ערכתי לאחרונה בתאריך 09.06.07 בשעה 19:26 בברכה, lior066
 
תם לידע כללי זאת השאילתה שגם רשומה למעלה:


STRSQL = "SELECT Content.Con, Content.ID FROM(Content) WHERE (Content.ID)=" & ID & ";"

איך אני יסביר את זה הכל פועל טוב אבל תראה..

כשאני בא להריץ את השאילתה הספציפית הזאת משהו מאוד לא ברור קורה..
בקטע הזה:


mvarCommandObject.CommandTimeout = 10
mvarCommandObject.CommandText = mvarSQLString
mvarCommandObject.Connection = mvarConnectionObject
Try
////// פה הבעייה...
mvarRecordsAffected = mvarCommandObject.ExecuteNonQuery()
//////
Return "OK"
Catch Ex As Exception
Return Ex.ToString

אני לא יודע מה הבעייה הרצתי דיבאגר נכנסתי לפונקצייה עקבתי אחרייה עד לשם ובשאילתה הספציפית הזאת פשוט הוא נתקע , מחכה לתשובה מהמסד נתונים.. אם אני סוגר את החיבור דרך ה MYSQL הוא ממשיך לרוץ ואומר לי שגיאה אבל שגיאה שאני יכול להבין כי סגרתי תחיבור , מבחינת פונקציות אחרות הכל עובד טוב מאוד! ועל אותו פונקצייה של חיבורים בגלל זה אני לא מצליח להבין מה קורה פה..
בנוסף גם הרצתי את השאילתה דרך ה QUARY BROWSER והיא מחזירה לי תשובה תוך מליונית השנייה ככה שאין בעייה עם השאילתה עצמה , מבחינת הרצה.. אני פשוט לא מבין מה הבעייה....

ניסתי לבדוק אם זה בעיות חיבור וזה לא כי הפשטתי את זה לקונטרול אחד בדף ועדיין זה אותו דבר משהו לא מסתדר לי....


אההה עוד משהו.. שגילתי לא מזמן..

אם אני מריץ את השאילתה אבל אין לה תוצאות בכלל ( כלומר עם ID נגיד 984) זה כן עובד.. קיצור זה הדבר הכי מוזר שראיתי בחיים שלי כיאילו המחשב שלי מורד בי או משהו.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Morishani

דרג אמינות חבר זה
   19:56   09.06.07   
אל הפורום  
  6. אני חושב ש..  
בתגובה להודעה מספר 5
 
   הפונקציה executeNonQuery לא מחזירה כלום.
לעומת זאת אם אתה רוצה להחזיר ערכים אז תשתמש ב executeReader


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
lior066

דרג אמינות חבר זה
   19:59   09.06.07   
אל הפורום  
  7. הבעייה היא שהיא כן מחזירה ערכים...  
בתגובה להודעה מספר 6
 
   ערכתי לאחרונה בתאריך 09.06.07 בשעה 20:02 בברכה, lior066
 
פשוט לא יודע למה אבל בשאילתה הזאת אני לא מקבל תשובה חזרה מהשרת של ה MYSQL ופשוט הפונקצייה קופאת והיא מחכה להחזיר לי תשובה אבל היא לא יכולה להחזיר לי תשובה כי השרת עצמו לא מחזיר לי , ב ADMINISTATOR CONTROL אני יכול לראות שהשאילתה יושנת כלומר הוא מריץ אותה אבל משום מה היא סתם במצב IDILE בלי שום קשר לעולם....

חוץ מזה שאר הדברים עובדים ואין סיבה שזה לא יעבוד , אולי זה משהו בהגדרות עצמם של השרת שלי?

ובלי שום קשר שאני צריך לשלוף נתונים אני משתמש ב ExecuteReader.. בישביל הרקורדסט , פשוט זאת שאילתה לבדיקה.. היא אמורה להחזיר לי כן או לא אם השאילתה עברה כמו שצריך וכמה תוצאות יש לי, הכי פשוט בעולם אפילו לא להיכנס לנתונים.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Morishani

דרג אמינות חבר זה
   20:04   09.06.07   
אל הפורום  
  8. וקורה מצב שיש timeout אחרי X שניות?  
בתגובה להודעה מספר 7
 
   אם כן מה השגיאה שרשומה על המסך?


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
lior066

דרג אמינות חבר זה
   20:08   09.06.07   
אל הפורום  
  9. זהו שאין לי אפילו טיימאוט..  
בתגובה להודעה מספר 8
 
   מוגדר לי טייאוט של 15 שניות למקרה ש.. אבל אין הוא לא סוגר את החיבור , ככה שאני אפילו לא יכול לראות את השגיאה.. , פשוט הפונקצייה קופאת והשרת רץ לו בכיף שלו כיאילו השאילתה נגמרה אבל משום מה זה משאיר את החיבור פתוח..


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Morishani

דרג אמינות חבר זה
   20:15   09.06.07   
אל הפורום  
  10. נסה להוריד גרסא חדשה יותר של Mysql ושל ה  
בתגובה להודעה מספר 9
 
   ערכתי לאחרונה בתאריך 09.06.07 בשעה 20:17 בברכה, Morishani
 

Connector .net
http://www.mysql.com/products/connector/net/


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
lior066

דרג אמינות חבר זה
   20:17   09.06.07   
אל הפורום  
  11. יש לי קונקטור חדש.. הגרסא האחרונה ניסתי כבר להחליף..  
בתגובה להודעה מספר 10
 
   אפילו התקנתי מחדש את ה MYSQL בגרסא אחרת , פשוט אני לא רוצה לעבור לגרסאת בטא כי אני יודע שהגרסא שאני מריץ עכשיו גם רצה על השרת שאני משלם עליו..


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
lior066

דרג אמינות חבר זה
   20:56   09.06.07   
אל הפורום  
  12. התקנתי את הגרסא של האלפה..  
בתגובה להודעה מספר 10
 
   ערכתי לאחרונה בתאריך 09.06.07 בשעה 20:56 בברכה, lior066
 
וקפץ לי הארור הזה..


<add name="MySqlRoleProvider" type="MySql.Web.Security.MySqlRoleProvider, MySql.Web, Version=5.1.1.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" connectionStringName="LocalMySqlServer" applicationName="/" />

ניסתי להגדיר לו את הקונקשיין סטרינג ועדיין זה אותו דבר..


<appSettings>
<connectionStrings>
<add name="LocalMySqlServer" connectionString="Data Source=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Command Logging=false;" providerName="MySql.Data.MySqlClient" />
</connectionStrings>

</appSettings>

אל תתיחסו לזה שזה לא מוגדר.. כיאילו למחשב שלי.. זה כבר אצלי עכשיו מוגדר וזה אתו הדבר..


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
lior066

דרג אמינות חבר זה
   13:42   10.06.07   
אל הפורום  
  13. חברה עליתי על הבעייה.. אבל .. כנסו שנייה..  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 10.06.07 בשעה 13:42 בברכה, lior066
 
טוב אחרי בדיקות של שלוש שעות הבנתי מההעייה אבל לפי דעתי זה הדבר הכי מטומטם בעולם ועדיין אל ניסיתי לתקן את זה עדיין..

לא הזכרתי שהטבלאות פה הם תוצאה של מעבר מאקסס דרך ה MIGRATION TOOLKIT מרגיל ל UTF-8
טוב אחרי שבדקתי את כל הדברים שם ראיתי שהוא נתקע לי בשאילתה בתוצאות שהוא אמור להחזיר לי קוד HTML באחד מהתאים , ואם התא לא מכיל קוד HTML הוא כן מחזיר לי אותו לדוגמא ב ID=5 רשום לי בקרוב בלי שום דבר ב HTML בלי קודים של RETURN בלי שום תתוים מיוחדים, משום מה אני רואה את הדבר הזה כדבר הכי מטומטם בעולם שאני עכשיו צריך להכניס הכל מההתחלה , ואני לא יודע אפילו אם זה יסתדר למרות שאני מאמין שכן , אבל אני צריך לבדוק את זה אם מישהו יודע אם זה מין מנגנון הגנה או משהו שאני צריך לבטל אז בבקשה לרשום לי פה בינתיים אני הולך למחוק את כל הטבלאות ל ה HTML ולהכניס מההתחלה בעעע...


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Sn00py 
חבר מתאריך 1.8.02
2954 הודעות, דרג אמינות חבר זה
   13:46   10.06.07   
אל הפורום  
  14. אף פעם לא לסמוך על הכלים האוטומטים האלה  
בתגובה להודעה מספר 13
 
   יעשו לך כל צרה שאשפר...
אם לא תסתדר תעלה את הקבצים הרלוונטים מכווצים ב RAR וננסה לעזור.

\x6C\x65\x65\x74\x68\x61\x78\x30
\x72\x3A\x2D\x29
tresp4sser


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
lior066

דרג אמינות חבר זה
   13:49   10.06.07   
אל הפורום  
  15. כן הכל הסתדר לי ..  
בתגובה להודעה מספר 13
 
   באמת משהו מוזר ביותר , טוב לא משנה לא בעייה לעשות את זה מההתחלה זה כולה כמה שטויות .. מקווה שזה לא יהיה יותר בעייתי , תודה רבה על העזרה שלכם ועל ההשתתפות באשכול..


לאנשים לידע כללי פעם הבאה אם יש לכם בעיות בשאילתה וודאו שאם עשיתם העברה ממסד נתונים אחר וזה תוקע את השאילתה לבדוק אם המעבר של התווים עבר טוב ולא דפק את הטבלה או משהו בסגנון...


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net