الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

vb6 database sql

مغلق
بدأه islambase@yahoo.com في 19 أبريل 2007 · 12 رد · 1,114 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أقوم بعمل برنامج قواعد بيانات بلغة VB6

و لدى فورم تحتوى على datPrimaryRS تتصل بأحد الجداول (orders مثلآ) الذى هو عبارة عن ثلاثة حقول

(ID,PRODUCT, Quantity) أى كانت الrecordsource لل datPrimaryRS هى orders

كما تحتوى الفورم على ثلاثة من ال textbox كل منهم متصل بأحد الحقول الثلاثة لهذا الجدول

أى كانت الdatafield لل TEXT1 هى ID

و كانت الdatafield لل TEXT2 هى PRODUCT

أى كانت الdatafield لل TEXT3 هى Quantity

وأريد فى هذا البرنامج كودآ يعرض بعض سجلات الجدول فقط (مثلآ التى فيها قيمة هذا الحقل Quantity أكبر من 77)

فقمت بكتابة هذا الكود الآتى للزرcomand1

Private Sub Command1_Click( )

Dim NNN ,NUM As Integer

Dim db As DAO.Database

Dim rst1 As DAO.Recordset

Dim q1 As QueryDef

Set db = OpenDatabase("C:\vb98\WIND.mdb")

Set q1 = db.CreateQueryDef("", "SELECT * FROM ORDERS where Quantity > 77;")

Set rst1 = q1.OpenRecordset(dbOpenDynaset)

NUM = datPrimaryRS.Recordset.RecordCount

Print "NUM="; NUM

NNN = rst1.RecordCount

Print "NNN="; NNN

End Sub

وكان عدد سجلات الجدول 40 سجل منهم 9 سجلات فقط فيها قيمة هذا الحقل Quantity أكبر من 77

فقمت بعمل run فوجدت أننى عند الضغط على هذا الزر فان البرنامج لم يعرض هذه السجلات التسعة فقط

فى ال textbox ولكنى بالضغط على أسهم ال datPrimaryRS وجدته يعرض ال 40 سجل كلهم

كما وجدته يطبع قيم المتغيرات NNN,NUM كالآتى NUM=40 NNN=1

وكنت أريد بعد هذا الكود أن تكون NUM=9 , NNN=9

أرجوكم فهمونى أين الخطأ؟ وكيف أصل الى ما أريد

ولكم ألف مليااااااااااار شكر

بســم الله الـرحمــن الرحيــم

السلام عليكــم ورحمـة الله وبركاتــة ،،

الحمدلله والصلاة والسلام على رسول الله وعلى آله وصحبه أجمعين

شكراً لك اخي الكريم

#2

اخي لقد قمت بالاجابه عليك مسبقا

يرجى ارسال المشروع او جزء مشكلتك (لأن من الممكن ان يكون هناك عدة احتمالات)

بالتوفيق .......

A7med_prof

اقتباس

آسف الدخول متقطع هذه القتره

اقتباس

[يمين]

.[/يمين]

A7med_prof-4-2007.jpg

اخر مواضيعي 2007

االمثال مطبق على موقع بورصه سعودي

.

.

مواضيع مهمه ومطلوبه بكثره VB6

.

بــرامج ومشــاريع عربيه كامــله {HnHn} والمزيد في قسم برامج الاعضاء || ربط قواعد بيانات اكسس مع الفيجوال بيسك, مادة دراسية كاملة {بنت اليمن}|| المرجع الشامل لجمل SQL ا {GENIUS-IT} || كيفية التعامل مع مكتبة الـ DAO, في الوصول إلى قاعدة بيانات {رمضان} || مثال ريط Visaul Basic 6.0 مع SQL SERVER ا || العمليات التي تجرى على قاعدة البيانات, مثال كامل {بنت اليمن} || تصدير البيانات من الاكسل الي الاكسس بالفيجوال بيسك {HnHn} || البحث في قاعدة البيانات {MANSUR} || قواعد البيانات العلائقية وتقنيات الوصول إليها {عبد الله فتحي} || كيفية أظهار بيانات جدولين بواسطة التاريخ ,,,,,,,

.

أخي ربما سؤالك اجابته في أحدى هذه المواضيع فإن لم تجد قم بالبحث وان لم تجد اطرح سؤالك مع وضع عنوان مناسب بحيث ان يكون هذا العنوان دال على محتوى الموضوع فغير ذلك من أكبر الكبائر في المنتدى وسيؤدي الى غلق او حذف موضوعك .

.

</
#4

وضع المشكلة بالطريقة دى مش هيفيد فى حاجة لان دى معلومات فى دماغك انت مش هنقدر نفهما لانها مش قياسية

ارجوا منك ان تقوم بعمل مثال لربما نستطيع ان نفعل شئ

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

#5

أخوانى الأعزاء

السلام عليكم ورحمة الله وبركاته

دعكم من هذه المعلومات الغير مفهومة التى فى دماغى ، ودعكم من هذه القصة الطويلة التى شرحتها سابقآ

باختصار شديد أنا أريد كودآ عند الضغط على الزرcomand1

يعرض بعض سجلات أحد الجداول وليس جميع سجلاته (مثلآ فى الجدول ORDERS يعرض فقط السجلات التى فيها قيمة الحقل Quantity أكبر من 77)

كما أريده يكتب لى عدد هذه السجلات فى أى TEXT على الفورم

أرجوكم أريد الكود كاملآ بدءآ من جمل ال DIM

وياليتكم تكتبون لى كودين (كودآ فى حالة استخدام الADO ، وكودآ آخر فى حالة استخدام الDAO )

بســم الله الـرحمــن الرحيــم

السلام عليكــم ورحمـة الله وبركاتــة ،،

الحمدلله والصلاة والسلام على رسول الله وعلى آله وصحبه أجمعين

شكراً لك اخي الكريم

#6

أخوانى الأعزاء

السلام عليكم ورحمة الله وبركاته

ألآ يوجد منكم من يقوم بعمل هذا البرنامج الصغير سواء باستخدام الADO ،أو باستخدام الDAO

انى أظن المطلوب من أسهل ما يمكن. وأظن كثيرآ منكم قام بعمل مثله عدة مرات فى برامجه الخاصة

باختصار شديد أنا أريد برنامجآ عند الضغط على الزرcomand1

يعرض بعض سجلات أحد الجداول وليس جميع سجلاته (مثلآ فى الجدول ORDERS يعرض فقط السجلات التى فيها قيمة الحقل Quantity أكبر من 77)

كما أريده يكتب لى عدد هذه السجلات فى أى TEXT على الفورم

أرجوكم أريد البرنامج كاملآ بدءآ من جمل ال DIM

ولكم ألف شكر

بســم الله الـرحمــن الرحيــم

السلام عليكــم ورحمـة الله وبركاتــة ،،

الحمدلله والصلاة والسلام على رسول الله وعلى آله وصحبه أجمعين

شكراً لك اخي الكريم

#7

أخي لا تطلب من الأعضاء يعملولك برنامج بس على كل حال للبحث عن قيمة أكبر من 77 أكتب الكود التالي

77<data1.recordset=select from orders where quantity

هذه جملة sql بسيطة نفترض فيها أن اسم أداة قاعدة البيانات هو data1 أما بالنسبة لعدد السجلات فاكتب الكود التالي :

text1.text=data1.recordset.recordcount

أرجو أن أكون قد أفدتك

#8

أخى العزيز

لك الشكر على محاولتك لمساعدتى ولكن

لقد قمت بكتابة كودك هذا للزرcomand1 ولكن ما زالت المشكل قائمة

ما زالت ال textbox المتصلة بأداة البيانات (حيثdatasource لكل منهم = data1) ما زالت تعرض جميع سجلات الجدول ولاتعرض فقط السجلات التى فيها قيمة الحقل Quantity أكبر من 77

فبالضغط على أسهم ال data1 يعرض جميع السجلات سجل وراء سجل

وكأن جملة ال SELECT وحدها لا فائدة منها

بســم الله الـرحمــن الرحيــم

السلام عليكــم ورحمـة الله وبركاتــة ،،

الحمدلله والصلاة والسلام على رسول الله وعلى آله وصحبه أجمعين

شكراً لك اخي الكريم

#9

الكود بسيط :

 datPrimaryRS.RecordSource = "SELECT * FROM ORDERS where Quantity > 77;"

 datPrimaryRS.Refresh

لمعرفة عدد التسجيلات

datPrimaryRS.recordset.movelast

print  datPrimaryRS.recordset.recordcount
#10

لازم تتاكد من ال Data Type الموجوده في الجدول في قاعده البيانات

#11

اخي العزيزtareq vb

لك ألف مليوووووون شكر يا حبيبى على اجابتك

فعلآ جملة الrefresh التى ذكرتها هى التى حلت لى المشكل التى أبحث عنها منذ شهور عديدة

ولكن أوضح لك يا حبيبى أن ذلك لم يصلح الا مع الأداة DATA1

أما مع الأداة datPrimaryRS فان البرنامج لم يقبل جملة الrefresh أصلآ وأرسل رسالة خطأ يقول فيها:

SYNTAX ERROR IN FRO CLAUSE

ETHOD REFRESH OF OBJECT ADODC FAILED

أرجوك يا حبيبى كيف اصلاح ذلك؟

ولك ألف مليوووووون شكر

بســم الله الـرحمــن الرحيــم

السلام عليكــم ورحمـة الله وبركاتــة ،،

الحمدلله والصلاة والسلام على رسول الله وعلى آله وصحبه أجمعين

شكراً لك اخي الكريم

#12

اعتقد حل هذه المشكلة في نوع commandtype انه موضوع كجدول لذلك ادخل على خصائص datPrimaryRS حيث توجد خاصية

CommandType

اجعلها adCmdText

او عند الضغط على الزر ضع

datPrimaryRS.CommandType=adCmdText

#13

اخي العزيز

جزاك الله كل خير يا حبيبى ولك ألف ملياااااااار شكر

فعلآ انتهت المشكلة تمامآ والحمد لله

المشكلة التى أبحث عن حلها منذ شهور عديدة

بســم الله الـرحمــن الرحيــم

السلام عليكــم ورحمـة الله وبركاتــة ،،

الحمدلله والصلاة والسلام على رسول الله وعلى آله وصحبه أجمعين

شكراً لك اخي الكريم

هذا الموضوع مغلق.

مواضيع مشابهة