ورود

View Full Version : سوال: جستجو با چند شرط در دیتابیس



moghadam1372
پنج شنبه 21 اردیبهشت 1391, 07:40 صبح
با سلام خدمت اساتید محترم

من این کد را جهت جستجو نوشتم ولی می خواهم فیلدی که بنام روز می باشد و مخالف صفر باشد را نمایش دهد ولی کارنمی کند --- بانک اکسس
علت جیست ؟

Dim sql1 As String
"'"&(sql1 = "SELECT * from vorod where roz <> 0 & Left(cod, " & Len(Text9) & ")='" & Trim(Text9

Adodc2.RecordSource = sql1

Adodc2.Refresh

با تشکر فراوان

vbhamed
جمعه 22 اردیبهشت 1391, 09:11 صبح
سلام

البته بهتر بود بانكتون رو مي‌زاشتين ولي داخل دستور SQL بعد از where به جاي كلمه And از & استفاده كردين

moghadam1372
یک شنبه 24 اردیبهشت 1391, 09:33 صبح
با سلام

هم از and استفاده شد وهم از & ولی بازهم جواب نداد و بانک هم اکسس می باشد

M.T.P
یک شنبه 24 اردیبهشت 1391, 12:16 عصر
دیتاتایپ فیلد cod و roz چیه؟ (عددی یا رشته ای)

moghadam1372
یک شنبه 24 اردیبهشت 1391, 15:59 عصر
با سلام
کد عددی و فیلد روز رشته ای می باشد

vbhamed
دوشنبه 25 اردیبهشت 1391, 07:31 صبح
سلام

Dim sql1 As String

sql1 = "SELECT * from vorod where roz <> '0' And Left$(Cstr(cod), " & Len(Text9) & ")='" & Trim(Text9) & "'"
Adodc2.RecordSource = sql1
Adodc2.Refresh

moghadam1372
دوشنبه 25 اردیبهشت 1391, 15:37 عصر
باتشکر از شما استاد گرامی مشکل حل شد ولی اگر بین دوتاریخ باشد و شرط بالا هم دران باشد کد ان چطوری می شود ؟

vbhamed
دوشنبه 25 اردیبهشت 1391, 17:50 عصر
سلام

فيلد تاريختون از چه نوعي هست و يك نمونه تاريخ ثبت شده در اون رو بنويسيد

moghadam1372
سه شنبه 26 اردیبهشت 1391, 08:46 صبح
با سلام استاد گرامی

فیلد تاریخ از نوع تکس است نمونه تاریخ 26/02/91

با تشکر

یکی نوشته ام ولی شرط بالا یا خواسته باشیم چند شرط دیگر دران اضافه کنم نتوانستم

On Error Resume Next
Dim i As String
Dim d1, d2 As String
Dim StrSql As String
d1 = text3.Text
d2 = text2.Text
i = "select * from vorod where date between '" & d1 & "' and '" & d2 & "' and Left(cod, " & Len(Text9) & ")='" & Trim(Text9) & "'"
Adodc2.RecordSource = i
Adodc2.Refresh

vbhamed
سه شنبه 26 اردیبهشت 1391, 08:56 صبح
سلام
اينم نمونه كد، فقط دقت كنيد تاريخ حتما بايد به صورت 6 رقمي ثبت شده باشد و به صورت 6 رقمي هم جستجو شود يعني مثلا براي تاريخ 1 ارديبهشت بايد 01/02/91 ثبت شده باشد و در جستجو هم به همين شكل وارد شود (منظور 0 پشت روز و ماههاي يك رقمي است)

Dim sql1 As String, d1$, d2$

d1 = text3
d2 = text4

sql1 = "SELECT * from vorod where roz <> '0' And Left$(Cstr(cod), " & Len(Text9) & ")='" & Trim(Text9) & "'" & _
" and date >= '" & d1 & "' And date <= ' " & d2 & "'"

Adodc2.RecordSource = sql1
Adodc2.Refresh