צפיות
תשובות
בעיה מוזרה
יצרתי חיבור פשוט לדאטאבייס וקריאת נתונים,
כשאני פותח את הדף ASP מהמחשב שלי (כשרת IIS) הכל פועל מעולה
אבל כשאני מעלה אותו לשרת שלי, הוא מציג לי את הארור הבא:
Microsoft OLE DB Provider for ODBC Drivers error '80040e10'
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 3.
/house.htm, line 106
הנה הקטע קוד שהוא מצביע עליו שהוא בעייתי:
Set MyConn = Server.CreateObject("ADODB.CONNECTION")
Set rs = Server.CreateObject("ADODB.Recordset")
MyConn.Open dsnless_conn
SQL= "SELECT nick,country,email,reg_date,rooms,status from users "
SQL=SQL&"WHERE nick='"&session("nick")&"'"
rs.open SQL,MyConn
if rs.EOF then
response.write "Error"
else
email=rs("email")
country=rs("country")
status=rs("status")
reg_date=rs("reg_date")
rooms=rs("rooms")
end if
myconn.Close
Set myconn=nothing
7 תשובות
אגב
אגב, כשאני מוחק את הקטע קוד הזה הוא פועל מעולה, מתחבר לדאטאבייס ושולף נתונים ללא בעיה .
גם במחשב שלי וגם בשרת.
תנסה את זה:
בראש הדף תכתוב:
<%option explicit%>
לאחר מכן, תגדיר את כל המשתנים שלך (לפני שאתה עושה שימוש בראשון בניהם). ההגדרה נעשית כך:
dim var1,var2,var3
לא הבנתי מה הקשר ….
השורה שהוא מצביע עליה (106)
זו השורה שמריצה את ה SQL
(rs.open SQL,MyConn)
אז לפי דעתי הבעיה אמורה להיות בSQL, לא?
בכל מקרה אני אנסה לעשות את מה שאמרת למרות שלא נראה לי זשאת הבעיה….
כמעט צדקתי…..
כמו שאמרתי שחשבתי שהבעיה שלו בSQL
היתי קרוב
היתה לו בעיה עם ה DB עצמו
כנראה שיניתי אצלי את אחד השמות של השדות
ולא העלתי את ה DB החדש לשרת אז הוא לא מצא את השדה
שצויין ב SQL
הבעיה נפתרה
הקשר הוא ש…..
לא אמרת באיזו שורה השגיאה, כך שהייתי צריך לנחש…..
אמרתי לך לעשות את השימוש ב- option explicit ולהגדיר משתנים, על מנת לבדוק שאין לך שגיאה באחד המשתנים.
להבא, תדאג להציג את כל הנתונים הרלוונטים של השאלה.
תודה, ועוד שאלה
דבר ראשון תודה על נסיון העזרה, כנראה שכחתי לציין ששורה 106 זו השורה
rs.open SQL,MyConn
אבל בכל מקרה תודה על הנסיון לעזור,
שאלה נוספת לי יש,
איך עושים Paste מה clipboard של המשתמש לתיבת טקסט.
זו שאלה לפורום צד לקוח