امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
دو تا سؤال آسون ديتابيسي
نویسنده پیام
seyyed آفلاین
كاربر دو ستاره
**

ارسال‌ها: 72
موضوع‌ها: 27
تاریخ عضویت: اردیبهشت ۱۳۸۴

تشکرها : 1
( 2 تشکر در 2 ارسال )
ارسال: #1
دو تا سؤال آسون ديتابيسي
سلام
1- با كنترل database ذاتي وي‍ژوال بيسيك مي شه با يك فايل اكسس كه تو اينترنت آپلود شده، ارتباط برقرار كرد؟ اگه مي شه چطوري و اگه نمي شه براي اين كار بايد چه كار كرد؟

2- فرض كنيم يك ديتابيس اكسس داريم كه توش دو تا فيلد به نامهاي code (از نوع لانگ) و name از نوع تكست داريم.
حالا مي خوام به اين ترتيب سرچ كنم:
اول كسايي كه كدشون 12 است
بعد از بين افراد پيدا شده، كسايي كه نامشون ali است.
(در ضمن ترتيب ذكر شده لازمه)
(در ضمن من از كنترل ديتابيس ذاتي وي‍ژوال بيسيك استفاده كردم.)
اگه كسي بتونه با زبون ساده و مبتديانه راهنماييم كنه ممنون مي شم...
۲۰-آبان-۱۳۸۶, ۱۵:۲۱:۲۵
وب سایت ارسال‌ها
پاسخ
far_222000 آفلاین
مدير بخش ديتابيس
*****

ارسال‌ها: 955
موضوع‌ها: 68
تاریخ عضویت: شهریور ۱۳۸۴

تشکرها : 468
( 1249 تشکر در 422 ارسال )
ارسال: #2
RE: دو تا سؤال آسون ديتابيسي
جواب سوال دوم:
چون از Data استفاده کردی، نمی تونی از دستورات SQL استفاده کنی
2 تا تکست باکس می ذاری رو صفحه فرض کن اسم یکی رو گذاشتی txtCode و اون یکی هم txtName
حالا پراپرتی Datasource تکست باکس اول یعنی txtCode رو می کنی Data1 (این Data1 اسم همون Object دیتاته!)
همین کار رو هم برای txtName می کنی
حالا پراپرتی DataField تکست باکس اول یعنی txtCode رو می کنی Code
پراپرتی DataField تکست باکس دوم یعنی txtName رو هم می کنی Name
حالا می ری به بخش کد نویسی و تو رویداد Form_Load (یا هر رویداد دیگه ای که بخوای) این دستورات رو می نویسی:

Do While Data1.Recordset.EOF = False
If txtCode.Text = "12" And txtName.Text = "ali" Then MsgBox "It's true!!!"
Data1.Recordset.MoveNext
Loop

به همین سادگی به همین خوشمزگی!!!

پارک24
مرجع خرید و فروش خودرو
(آخرین ویرایش در این ارسال: ۲۱-آبان-۱۳۸۶, ۲۲:۵۶:۱۵، توسط far_222000.)
۲۱-آبان-۱۳۸۶, ۲۲:۵۴:۰۲
وب سایت ارسال‌ها
پاسخ
seyyed آفلاین
كاربر دو ستاره
**

ارسال‌ها: 72
موضوع‌ها: 27
تاریخ عضویت: اردیبهشت ۱۳۸۴

تشکرها : 1
( 2 تشکر در 2 ارسال )
ارسال: #3
RE: دو تا سؤال آسون ديتابيسي
سلام
اولا ممنون كه جواب دادي! خدا خيرت دهاد.
دوما فكر مي كنم جوابي كه بهم دادي اون چيزي نبود كه من ميخواستم.

far_222000 نوشته است:چون از Data استفاده کردی، نمی تونی از دستورات SQL استفاده کنی

اتفاقا چرا! مي تونيم استفاده كنيم! فقط كافيه خصيصه data1.RecordSource رو برابر با دستور SQL قرار بديم.
با اين فرض مي توني به سوالم جواب بدي؟
در ضمن من نمي خوام از AND استفاده كنم.
بلكه مي خوام اول code رو چك كنه. بعد تو نتايج اون بياد name رو چك كنه.

چرا؟
چون ...
فرض كن بجاي فيلد name يه فيلد داريم از نوع memo
و فرض كن ديتابيسمون چندين هزار ركورد داره.
مي دونيم كه سرچ كردن تو فيلد از نوع long خيلي سريع تر از سرچ تو فيلد از نوع memo است.
پس من مي خوام اول با استفاده از فيلد code تعداد ركورد ها رو محدود تر كنم بعد تو اين ركوردهاي محدود، بيام اون يكي فيلدم رو چك كنم. تا سرعت اجرا بالاتر بره.

در ضمن به خاطر يك سري محدوديت ها مجبورم از كنترل Data ذاتي وي بي استفاده كنم.
۲۳-آبان-۱۳۸۶, ۱۴:۴۴:۱۸
وب سایت ارسال‌ها
پاسخ
far_222000 آفلاین
مدير بخش ديتابيس
*****

ارسال‌ها: 955
موضوع‌ها: 68
تاریخ عضویت: شهریور ۱۳۸۴

تشکرها : 468
( 1249 تشکر در 422 ارسال )
ارسال: #4
RE: دو تا سؤال آسون ديتابيسي
این دستور
SELECT field1,field2 INTO destinationtable FROM sourcetable WHERE field1 = text
1 جدول می سازه به نام destinationtable، و توی اون 2 تا field به نام های field1 و field2 رو قرار می ده با این شرط که field1 مقدارش برابر text باشه
این همون کاری که می خوای بکنی تا دنبال name بگردی

حالا با این دستور از نتایج بدست اومده دنبال code می گردی:
SELECT field1,field2 FROM destinationtable WHERE field2 = text

نکته اگه این دو تا دستور رو تو دل دستور اول جا گذاری می کردی سرعتش با سرعت الان یکیه(البته تو حجم بالا تست نکردم) اگه بخوای جفت دستوراتش بشه 1 کی اینجوری می شه:
SELECT field1,field2 INTO destinationtable FROM sourcetable WHERE field1 = text1 AND field2 = text2

پارک24
مرجع خرید و فروش خودرو
۲۴-آبان-۱۳۸۶, ۱۴:۴۵:۵۱
وب سایت ارسال‌ها
پاسخ
seyyed آفلاین
كاربر دو ستاره
**

ارسال‌ها: 72
موضوع‌ها: 27
تاریخ عضویت: اردیبهشت ۱۳۸۴

تشکرها : 1
( 2 تشکر در 2 ارسال )
ارسال: #5
RE: دو تا سؤال آسون ديتابيسي
سلام
آقا جون من هر كار كردم نتونستم از اين راهي كه گفتي استفاده كنم
مي توني يه برنامه مشابه برام بفرستي؟؟؟
۲۷-آبان-۱۳۸۶, ۱۷:۱۴:۴۲
وب سایت ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  سؤال: مشکل در استفاده از پکت ياهو! +behnam+ 3 4,077 ۳۰-آبان-۱۳۸۹, ۱۸:۱۱:۱۲
آخرین ارسال: +behnam+
Question سؤال: باز کردن درايو در پنجره My Compiuter حسن تیکه 3 3,715 ۱۹-اسفند-۱۳۸۸, ۱۰:۱۶:۳۶
آخرین ارسال: حسن تیکه
  کمک در ساختن جعبه پيغام به اضافه چند تا سؤال تو وی بی mojtabamalaekeh 17 10,289 ۲۳-اردیبهشت-۱۳۸۷, ۰۶:۲۴:۳۰
آخرین ارسال: mojtabamalaekeh
  یک سؤال از VB: دادن خواص یک شیء به شیء دیگر mojtabamalaekeh 6 4,206 ۳۰-فروردین-۱۳۸۷, ۱۲:۳۹:۳۸
آخرین ارسال: Mamad2003
  سؤال در مورد icon Changer sepehrEZ 1 2,126 ۲۷-دى-۱۳۸۶, ۰۲:۲۱:۱۵
آخرین ارسال: sepehrEZ
Question يه سؤال فوري و مهم a_nafiseh 1 2,211 ۰۳-دى-۱۳۸۶, ۱۰:۵۵:۵۲
آخرین ارسال: mbza11
  چند تا سوال آسون amator1 4 2,552 ۱۵-فروردین-۱۳۸۶, ۲۱:۴۶:۲۰
آخرین ارسال: amator1
Shy یه سؤال دارم ؟ lovezahra 5 3,497 ۱۹-شهریور-۱۳۸۵, ۱۲:۲۸:۴۲
آخرین ارسال: tanhatarin
  سؤال در مورد DataGrid Control lovezahra 0 1,934 ۱۰-شهریور-۱۳۸۵, ۱۷:۱۸:۰۵
آخرین ارسال: lovezahra

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS