• 0
drmohd

مشكلة ادخال التاريخ من داتا جريد الى القاعدة

سؤال

لدي حقل تاريخ  tel_edate  - tel_pdate  نوع  smalldatetime    كيف ادخل بياناته من داتا جريد   وهذا الكود 

 

Dim SQL As String = "insert into tel_det (tel_rep_id,tel_no,tel_use,tel_acc,tel_br,tel_pdate,tel_edate,tel_now,tel_last,tel_dain,tel_tot) values (@tel_rep_id,@tel_no,@tel_use,@tel_acc,@tel_br,@tel_pdate,@tel_edate,@tel_now,@tel_last,@tel_dain,@tel_tot)"
        Dim CMD As SqlCommand = New SqlCommand
        With CMD
            .CommandType = CommandType.Text
            .Connection = con
            .Parameters.Add("@tel_rep_id", SqlDbType.Decimal, 10, "tel_rep_id")
            .Parameters.Add("@tel_no", SqlDbType.NVarChar, 12, "tel_no")
            .Parameters.Add("@tel_use", SqlDbType.NVarChar, 50, "tel_use")
            .Parameters.Add("@tel_acc", SqlDbType.NVarChar, 12, "tel_acc")
            .Parameters.Add("@tel_br", SqlDbType.NVarChar, 50, "tel_br")
            .Parameters.Add("@tel_pdate", SqlDbType.SmallDateTime, dt1)
            .Parameters.Add("@tel_edate", SqlDbType.SmallDateTime, "tel_edate")
            .Parameters.Add("@tel_now", SqlDbType.Decimal, "tel_now")
            .Parameters.Add("@tel_last", SqlDbType.Decimal, "tel_last")
            .Parameters.Add("@tel_dain", SqlDbType.Decimal, "tel_dain")
            .Parameters.Add("@tel_tot", SqlDbType.Decimal, "tel_tot")

            .CommandText = SQL
        End With
        If con.State = ConnectionState.Open Then con.Close()
        con.Open()
        dpdet.TableMappings.AddRange(New DataTableMapping() {New DataTableMapping("Table", "tel_det", New DataColumnMapping() {New DataColumnMapping("tel_rep_id", "tel_rep_id"), New DataColumnMapping("tel_no", "tel_no"), New DataColumnMapping("tel_use", "tel_use"), New DataColumnMapping("tel_acc", "tel_acc"), New DataColumnMapping("tel_br", "tel_br"), New DataColumnMapping("tel_pdate", "tel_pdate"), New DataColumnMapping("tel_edate", "tel_edate"), New DataColumnMapping("tel_now", "tel_now"), New DataColumnMapping("tel_last", "tel_last"), New DataColumnMapping("tel_dain", "tel_dain"), New DataColumnMapping("tel_tot", "tel_tot")})})
        dpdet.InsertCommand = CMD
        dpdet.Update(dttel, "tel_det")
        con.Close()

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

5 إجابة على هذا السؤال .

  • 0

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

بالنسبة للتواريخ تأكد أن الصيغة شهر يوم سنة، لأن السيكوال بطبيعته يستخدم هذا التنسيق إلا إذا تم تغييره يدوياً أو بناء على الإعدادات

 

ثانياً: أريد أن ألفت انتباهك لشئ وهو أنك لست بحاجة لهذا الكود الطويل لتنفيذ أمر إدخال فلست مضطراً لاستخدام الباراميترز ولكن يمكنك استخدام جمع المتغيرات الحرفية

مثال: بفرض لدينا جدول به ثلاثة أعمدة اسم - تاريخ ميلاد - عنوان يكون الكود كالتالى

cmd.CommandText = "insert into Students (Name, BirthDate, Address) values ('" + txtName.Tex + "','" + DateTimePicker.Value.ToString("MM/dd/yyyy") + "','" + txtAddress.Text + "')" ; // No parameters

ثم يتم التنفيذ عن طريق

Conn.Open()cmd.ExecuteNonQuery()Conn.Close()
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

طيب لو بندخل وقت ساعات ودقائق وثوانى ماهى الصيغة المثلى

 

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

 

بارك الله فيكم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

طيب لو بندخل وقت ساعات ودقائق وثوانى ماهى الصيغة المثلى

 

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

 

بارك الله فيكم

الكود التالى يقوم بإدخال التاريخ ولا يدخل الوقت لذلك تجده يخزن الوقت فى قاعدة البيانات 00:00:00

مكنك استخدام جمع المتغيرات الحرفية

cmd.CommandText = "insert into Students (Name, BirthDate, Address) values ('" + txtName.Tex + "','" + DateTimePicker.Value.ToString("MM/dd/yyyy") + "','" + txtAddress.Text + "')" ;

 

أما فى حالة الرغبة فى تسجيل الوقت مع التاريخ فنستخدم نفس الصيغة مع إضافة عوامل الوقت HH:mm:ss

 

cmd.CommandText = "insert into Students (Name, BirthDate, Address) values ('" + txtName.Tex + "','" + DateTimePicker.Value.ToString("MM/dd/yyyy HH:mm:ss") + "','" + txtAddress.Text + "')" ;

 

يجب مراعاة الحروف الكبيرة والصغيرة لأن M تعبر عن الشهر أما m تعبر عن الدقائق

 

أرجو من الله أن يكون مفيداً

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

طيب لو بندخل وقت ساعات ودقائق وثوانى ماهى الصيغة المثلى

 

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

 

بارك الله فيكم

الكود التالى يقوم بإدخال التاريخ ولا يدخل الوقت لذلك تجده يخزن الوقت فى قاعدة البيانات 00:00:00

مكنك استخدام جمع المتغيرات الحرفية

cmd.CommandText = "insert into Students (Name, BirthDate, Address) values ('" + txtName.Tex + "','" + DateTimePicker.Value.ToString("MM/dd/yyyy") + "','" + txtAddress.Text + "')" ;

 

أما فى حالة الرغبة فى تسجيل الوقت مع التاريخ فنستخدم نفس الصيغة مع إضافة عوامل الوقت HH:mm:ss

 

cmd.CommandText = "insert into Students (Name, BirthDate, Address) values ('" + txtName.Tex + "','" + DateTimePicker.Value.ToString("MM/dd/yyyy HH:mm:ss") + "','" + txtAddress.Text + "')" ;

 

يجب مراعاة الحروف الكبيرة والصغيرة لأن M تعبر عن الشهر أما m تعبر عن الدقائق

 

أرجو من الله أن يكون مفيداً

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

شكراا اخي على الاجابة 

 

نفسي احصل مثال فاتورة شامل بالجريد وداخلها كمبوبوكس  وختيار رقم صنف يظهر بيانته في الخلايا مثل السعر والاسم  ومجموع العامود الاجمالي  بأقل كود  او بستخدام binding source  للاظافة والحذف والتعديل  او بستخدام  transiction

 

انا عملت الجريد مثل المثال فوق  وعبأت الكمبو برقم  وعند الاختيار يتم يجلب البيانات في الخلايا  مع شويه اظافات  لكن طريقة طويلة وكود كثير  وهذا للاظافة غير التعديل اريد طريقة اسهل واسرع 

 

سؤال ثاني  لو مثلا عندي جدول موظفين وبه اكثر من 500 موظف مع كامل بياناتهم  مع صورهم   يتم جلب البيانات الى الداتا سيت وربط التكست بهم  لكن كذه يكون ضغط كبير على الجهاز او الذاكرة  خاصة لو قاعدة البيانات على الانترنت

ماهو افضل حل  فكرة استدعي فقط السجل الاول او الموظف الاول فقط  وباقي الموظفين يتم البحث عنهم بواسطة رقمة او اسمة  في هذي الحاله لاداعي لأمر التالي والسابق

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .