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

التعامل من الجداول للتحقق من شرط على حقل

بدأه العطار في 20 يناير 2009 · 7 رد · 879 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

انا جديد على الفيجول بيسك وخاصة الدوت نت وانا اكثر تعاملي مع الاكسس مشكلتي كالتالي :

في الاكسس اقوم بانشاء ميديول ومن خلاله يتم الاتصال بقاعدة البيانات وابداء التعامل مع الجداول وخاصة اذا اردت التعامل مع جدول معين بحيث يتحقق من حقل معين في كل صف الى ان يصل الى نهاية الجدول

اريد ان اعمل نفس الشي في الفيجول بيسك دوت نت .

انا اعرف اعمل فورم واربطه بقاعدة البيانات التي اريدها عن طريق هذا الفورم ولكن انا اريد ان ابني class خاص لربط قاعدة البيانات وابداء بعمل اللوب (while) للتحقق من شرط معين على حقل معين في كل صف من صفوف الجدول الى ان يصل الجدول الى آخره.

آسف للاطالة اتمنى المساعدة

#2

أخي الكريم ,

أعلم أنك شرحت بشكل ( وافي ) لكن مالذي تقصده بتضمين Class أو بناء Class خاص لعمل ماذكرته ؟

The important thing is not so much

that every child should be taught,

as that every child should be given the wish to learn.

#3

اخي الكريم اشكرك على اهتمامك

قصدي هو مثل medule في access قصدي مكان مستقل اضع فيها كودي ثم استدعيه متى احتجت له وفي نظري انه افضل من كتابة الكود داخل الفورم

اشكرك مرة اخرى على اهتمامك

#4

إذا كانت الفكرة هي فقط نقل العمليات الخاصة بالإتصال فكل ماعليك فعله هو :

من القائمة الرئيسية انقر على ( Project ) ومن ثم اختر ( Add Module ) بعد ذلك سمي هذا الـ Module ماتشاء ولنفرض على شبيل المثال ( Engine ), اضغط على Add .

الأن عليك نقل كل ماتريد تورديه من Code الـ Form الى Code الـ Module الجديد :

مثال بسيط :

 

Imports [color= #990000;]System[color= #339933;].Data[color= #339933;].OleDb

Module Engine

    [color= #000000; font-weight: bold;]Private _DataBaseFileName [color= #b1b100;]As String [color= #339933;]= String[color= #339933;].[color= #990000;]Empty

    [color= #000000; font-weight: bold;]Public Property DataBaseFileName[color= #009900;]([color= #009900;]) [color= #b1b100;]As String

        Get

            [color= #b1b100;]Return _DataBaseFileName

        [color= #990000;]End Get

        Set[color= #009900;](ByVal Value [color= #b1b100;]As String[color= #009900;])

            _DataBaseFileName [color= #339933;]= Value

        [color= #990000;]End Set

    [color= #990000;]End Property

 

    [color= #000000; font-weight: bold;]Function GetTable[color= #009900;](ByVal TableName [color= #b1b100;]As String[color= #009900;]) [color= #b1b100;]As DataTable

        Dim Conn [color= #b1b100;]As String [color= #339933;]= [color= #0000ff;]"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" [color= #339933;]& DataBaseFileName
 [color= #339933;]& [color= #990000;]_

        [color= #0000ff;]";Persist Security Info=False"

        Dim Cmd [color= #b1b100;]As String [color= #339933;]= [color= #0000ff;]"Select * from " [color= #339933;]& TableName

        Dim Adapter [color= #b1b100;]As [color= #000000; font-weight: bold;]New OleDbDataAdapter[color= #009900;](Cmd[color= #339933;], Conn[color= #009900;])

        Dim DT [color= #b1b100;]As [color= #000000; font-weight: bold;]New DataTable

        Adapter[color= #339933;].Fill[color= #009900;](DT[color= #009900;])

        [color= #b1b100;]Return DT

    [color= #990000;]End [color= #000000; font-weight: bold;]Function

 

[color= #990000;]End Module

الإستخدام :

 

[color= #000000; font-weight: bold;]Public [color= #000000; font-weight: bold;]Class Form1

 

[color= #000000; font-weight: bold;]Private Sub Button1_Click[color= #009900;]( Byval Sender [color= #b1b100;]As [color= #990000;]System[color= #339933;].Object[color= #339933;], [color= #990000;]_

Byval E [color= #b1b100;]As [color= #990000;]System[color= #339933;].EventArgs [color= #009900;]) Handles Button1[color= #339933;].Click

DataGridView1[color= #339933;].DataSource [color= #339933;]= Engine[color= #339933;].GetTable[color= #009900;]([color= #0000ff;]"Students"[color= #009900;])

[color= #990000;]End Sub

 

[color= #990000;]End [color= #000000; font-weight: bold;]Class

بالتوفيق, أمل أن يكون ماتريد .

The important thing is not so much

that every child should be taught,

as that every child should be given the wish to learn.

#5

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

الشكر الجزيل لك وعلى اهتمامك

هذا جزا من طلبي تحقق . آمل مساعدتي لحل الجزء الاخر الا وهو عمل لووب (while) للمرور على كل record واجراء اي عملية عليه مثلا

اذا كان حقل تاريخ الميلاد فارغ فان الحقل x يساوي -1

ماذا اكتب بدل الرمز (y) في الكود التالي وبماذا اعرفه

dim y as ..........
while y.eof do
if not null(me.[birth_code]) then
me.[x]=-1
end if
y.move next
y.update
#6

هذا الكود ...

ويوجد مثال بالمرفقات

تحياتي

على فكرة اعتقد هذي الطريقة طويلة شي ما ويوجد طرق كثيرة .. اتمنى من الاخوان المشاركة

تحياتي

Imports System.Data.OleDb
Public Class Form1
	Dim Cn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Application.StartupPath & "\test.mdb;Persist Security Info=False")
	Dim Cn1 As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Application.StartupPath & "\test.mdb;Persist Security Info=False")

	Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click


		Cn.Open()
		Cn1.Open()
		Dim cmd As New OleDbCommand
		cmd.CommandType = CommandType.Text
		cmd.Connection = Cn
		cmd.CommandText = "select date,id from table1"
		Dim dr As OleDbDataReader
		dr = cmd.ExecuteReader
		Do While dr.Read
			If dr.IsDBNull(0) = True Then
				Dim cmdd As New OleDbCommand("update table1 set CheckB='-1' where id=" & dr.GetInt32(1) & "", Cn1)
				cmdd.ExecuteNonQuery()
			End If
		Loop
		Cn1.Close()
		Cn.Close()

	End Sub
End Class

WindowsApplication1.rar

#7

استاذي العزيز طلال

اشكرك على اهتمامك وكذلك الاستاذ بشار

قد اكون اغفلت احد النقط المهمه وهي الاتي:

انا اريد استخدام اوامر ADO.NET في الاتصال وفي عمل طلبي

بمعنى آخر لو عملت الاتصال عن طريق ado.net هل يمكن استخدام الدالة while للمرور على جميع سجلات الجدول

لتوضيح المشكلة

انا عندي جدول في قاعدة بيانات SQL SERVER2008 وفي احد الحقول يوجد مسار للصور اريد ان اعمل برنامج يقوم بالمرور على كل record و يعمل check لمسار الصورة هل الصورة موجودة او لا ( جميع اسماء الصور مخزنة ولكن ليس بالضرورة ان تكون الصور مخزنة ) اذا كانت الصورة موجودة يقوم بتخزين الصورة في حقل الصورة و ينتقل للسجل التالي .

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

#8

مرحباً أخي الكريم .

وجدت هذا المشروع في الموقع www.a1vbcode.com, صراحةً لفتَ انتباهي واعتقد أنه يلبي حاجتك لإكتشاف ما تريد :

Photo Organizer using Access2007 (mmGallery)

يعتمد على Access2007 DateBase .

بالتوفيق .

تم تعديل هذه المشاركة بواسطة Bashar Rabat في 22 يناير 2009 في 18:13

The important thing is not so much

that every child should be taught,

as that every child should be given the wish to learn.

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…