בעיה עם SELECT ב SQL ב VB (מרוב שיש לי בעיות אני פשוט מוסיף שאלות, :() - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

בעיה עם SELECT ב SQL ב VB (מרוב שיש לי בעיות אני פשוט מוסיף שאלות, :()


nadnad

Recommended Posts

שלום, יש לי בעיה כשאני מנסה להשתמש במשהו מסויים בSQL ב Visual basic

יש לי FORM שבו יש DATA (data1) ואני רוצה שהמשתמש יכניס את הסכום כסף שהוא רוצה שיהיה מינימום \ מקסימום מחיר, ואז זה יציג רק מוצרים מעל\מתחת למחיר המצויין

 x = Val(Text4.Text)
s = "SELECT * FROM table1 where price>x"
Data1.RecordSource = s
Data1.Refresh

]

זה עובד עם במקום של ה

price>x

אני רושם

 price> 777

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

הוא נותן את הארור הבא: Too few parameters. Expected one

ומסמן בצהוב את השורה

Data1.Refresh

(לא נראה לי שזה אומר שהבעיה בשורה זו...)

תודה לעוזרים!

קישור לתוכן
שתף באתרים אחרים

יש לי עוד בעיה :P

נגיד אם המשתמש רושם מחיר שאינו בטווח המחירים והשאילתה מחזירה 0 רשומות...

אז איך אני יכול לדעת את זה? כאילו ב

s = "SELECT * FROM table1 where price>" & cstr(x)

שהוא מחזיר ל S משהו, איך אני יכול לדעת שאין ב S כלום (כדי להציג הודעה למשתנה כדי שיכניס נתון אחר שהוא כן בטווח)

קישור לתוכן
שתף באתרים אחרים

אם יש לך טווח מחירים מוכן מראש אז אתה יכול לעשות:


x=inputbox("Enter Price")
while ( x<MIN_PRICE Or x>MAX_PRICE )
x=inputbox("Enter Price")
wend

זה יבדוק את תקינות

X

לפי ערכים מוכנים מראש שאתה יכול להגדיר בראש הקוד ככה:


const MIN_PRICE=50
const MAX_PRICE=200

קישור לתוכן
שתף באתרים אחרים

בעע יש לי עוד בעיה :(

אני כבר שעה יושב על זה ולא מצליח לסדר!

יש לי טופס שבו יש Data1, הוא שם את כל השדות מה Access לתיבות TEXT ב Visual basic

עכשיו אני רוצה שהוא ייקח את התיבות טקסט האלה ויכניס את הערכים שלהם לתוך טבלא שהגדרתי ב Access ע"י לחיצת כפתור.

לפי מה שהבנתי, הפקודה לעשות את זה היא

INSERT INTO

אז מה שרשמתי זה זה:

Insert Into Orders (code ,name ,type ,kamut ,kamutmelay ,price, Oprice) Values(code.Text, Text2.Text, Text3.Text, Text5.Text, kamut.Text, Text1.Text, Oprice.Text)

או אם תרצו דוגמה יותר קצרה:

INSERT INTO table (field) VALUES('value')

וניסיתי גם בטבלאות אחרות... וגם בטבלא של ה Data1 עצמו, עם קצת ערכים, גם ניסיתי Delete

DELETE FROM table

בכולם הוא אומר לי כארור לאחר שאני מסיים לרשום את השורה:

Compile error
Excpected: end of statement

ניסיתי, שיניתי, חיפשתי באינטרנט, במדריכים  :kopfpatsch:

לא מצאתי... אשמח אם תעזרו לי...

קישור לתוכן
שתף באתרים אחרים

שים לב, שלחת לו דברים שהוא לא מכיר! אתה צריך לדעת להבדיל בין VBS לבין SQL. בSQL אתה לא יכול לשלוח משתנים של הVB ישירות, כיה וא לא מכיר. זאת גם הייהתה הבעיה שלך מקודם.

את

Insert Into Orders (code ,name ,type ,kamut ,kamutmelay ,price, Oprice) Values(code.Text, Text2.Text, Text3.Text, Text5.Text, kamut.Text, Text1.Text, Oprice.Text)

תהפוך ל-


"Insert Into Orders (code ,name ,type ,kamut ,kamutmelay ,price, Oprice) Values('" & code.Text & "', '" & Text2.Text & "', '" & Text3.Text & "', '" & Text5.Text & "', '" & kamut.Text & "', '" & Text1.Text & "', '" & Oprice.Text & "')"

בהנחה שהגדרת את כולם כTEXT. במידה ואחד מהם תאריך, אתה מחלי. את ה-' ב- #, ואם זה מספר, אתה פשוט מוחק אותו.

קישור לתוכן
שתף באתרים אחרים

די

אני כזה אדיוט...

כשיש לי את זה דרך איזו פקודה אני מעביר אותו ל database...

ניסיתי את זה

s = "Insert Into Orders (code ,name ,type ,kamut ,kamutmelay ,price, Oprice) Values(" & code.Text & ", '" & Text2.Text & "', '" & Text3.Text & "', " & Text5.Text & ", " & kamut.Text & ", " & Text1.Text & ", " & Oprice.Text & ");"
'Data1.RecordSource = Orders
Data1.Database.Execute = s
Data1.Update
'Data1.RecordSource = table1

מצטער שאני דביל אבל אני פשוט דביל...

איפה הבעיה שליייי =[

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...