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

استفسار بخصوص البروسيجر

بدأه "طلال" في 12 ديسمبر 2013 · 30 رد · 1,968 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

وعندي بالبرنامج اكثر من تكست بوكس منفصلين عن بعض يعني اغلب التكست بجدول اخرى

وابغى اذا عمل على زر اضافة يتم اضافة البيانات الى قاعدة البيانات

 

ولا ادري هل طريقتي صحيحه لاني اريد ادمج الجداول مع بعض بزر البتون

 

واتمنى وضحت الصورة

 

وجزاكم الله خيرر

#2

ستجد في توقيع اضافة بيانات لجدولين قد يفيدك

#3

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

#4

لا يوجد مشكله نفس الفكره

#5

مشكور اخوي الغالي بس ممكن تشرح لي هالنقطه

 

if @@ERROR = 0
    commit
else
begin
    raiserror('عفوا حدث خطأ الرجاء اعادة المحاولة',14,1)
    rollback
end
end

#6

هذه الTransaction وظيفتها ان انتها كل الاوامر صحيحة في ملف اللوج قم تنفزا الجداول الحقيقية واذا حدث اي حطء في اي مرحله من الكود تراجع عن كل الاوامر اظهار رسالة خطء وهذه الرساله تظهر في البرنامج وتوفر كود تتبع الاخضطاء في البرنامجاذا استخدمة try catch

قبول الكل او رفض الكل

بالتوفيق

1
#7

اخي لابد استخدم try catch ببرنامجي؟ ولا مايحتاج

#8

الـ Try..Catch هي شيء خياري تماماً .. و لم تكن متوفرة في النسخ SQL Server 2000 و ما قبل.. و هي مستخدمة من أجل التقاط الخطأ و معالجته في الـ Catch Block إن وقع.

 

فيمكنك على سبيل المثال أن تكتب في الإجراء المخزن ما يلي إذا لم ترد استخدام الـ Try..Catch:

 

Begin Tran

 

... your database script here....

 

if @@ERROR = 0
   Commit
else
begin
   Raiserror('عفوا حدث خطأ الرجاء اعادة المحاولة',16,1)
   Rollback
end

 

كما أسلف الأخ كريم..

 

أرجو الفائدة

1

دروس و كتب مفيدة----------------------كتيب الإجرائيات المخزنةتعرف على اللغة Transact SQL <<-->> كتيب عن تنصيب قواعد البيانات Sql Server باللغة العربية كتيب عن إنشاء قواعد البيانات في SQL Server باللغة العربية <<-->> درس مع الأمثلة عن المؤشرات و التعامل معها في الـ T-SQLالعبارات الشرطية و الحلقات في T-SQL <<-->> شرح لبعض الـ Extended Stored Procedure استخدام مكتبات الـ Dot Net الخاصة بك في الـ Sql Server 2005 <<-->> التعامل مع المصفوفات من خلال الـ T-SQLتعابير الجداول الشائعة في SQL Server 2005 <<-->>الاتصال بالأداة SQL Server Management Studioحلول سريعة و لمحات برمجية --------------------------------التصدير إلى إكسل : طريقة أولى : طريقة بسطر واحد من الكود <<-->> طريقة ثانية : طريقة تحتاج إنشاء إجرائية مخزنةً تجهيز بيانات جدول بالصيغة XML تمهيداً لحفظها كملف <<-->> تصدير البيانات إلى ملفات نصية برمجياً إغلاق جميع الإتصالات المفتوحة بقاعدة بيانات محددة .. تمهيداً لاسترجاعها أو حذفها <<-->> الاستعلام بناء على وقت مخزن بالصيغة العربية ضمن حقل نصي ..حذف السجلات المتكررة و إبقاء عدد محدد منها في جدول.. <<-->> أسرع طريقة لحذف سجلات جدول كيف احصل على اسم جهازي والباسوورد باستخدام T-SQL <<-->> حشر أنواع الصور المختلفة في حقل من نوع Image باستخدام إجرائية مخزنة .كيف تعرف أنواع الصور المخزنة في حقل من نوع Image .. <<-->> إجرائيات مخزنة ببارامترات ديناميكية مفيدة جداً للاستعلامات استخدام رقم الحقل بدلاً من الإسم في عبارات الإستعلام <<-->> من هو أضخم الجداول في قاعدة بياناتي ؟معرفة زمن تنفيذ الإجرائيات ( لتختار الطريقة الأسرع بين إجرائياتك المخزنة ) <<-->> التعامل مع الـ Rules برمجياً الحصول على آخر صف في الجدول <<-->> قراءة ملفات XML باستخدام T-SQL برمجياً (مثال مرفق)سحب بيانات ملف إكسل إلى الـ SQL Server <<-->> تشفير النسخة الاحتياطية بكلمة مرور <<-->> التخلص من البيانات المكررة <<-->> حل مشكلة التاريخ الهجريDifferential Backup بالتعريف---------- لا إله إلا الله .. محمد رسول الله

أخوكم في الله..  Imad Ozone

#9

الف شكر لك استاذي عملت اللي قلتلي وظهر لدي خطاء

 

Msg 156, Level 15, State 1, Procedure add_Tables, Line 13
Incorrect syntax near the keyword 'as'.
 

#10

ضع سكريبت الـ Procedure اللي كتبتو حتى أقلك وين الخطأ..

 

تحياتي

1

دروس و كتب مفيدة----------------------كتيب الإجرائيات المخزنةتعرف على اللغة Transact SQL <<-->> كتيب عن تنصيب قواعد البيانات Sql Server باللغة العربية كتيب عن إنشاء قواعد البيانات في SQL Server باللغة العربية <<-->> درس مع الأمثلة عن المؤشرات و التعامل معها في الـ T-SQLالعبارات الشرطية و الحلقات في T-SQL <<-->> شرح لبعض الـ Extended Stored Procedure استخدام مكتبات الـ Dot Net الخاصة بك في الـ Sql Server 2005 <<-->> التعامل مع المصفوفات من خلال الـ T-SQLتعابير الجداول الشائعة في SQL Server 2005 <<-->>الاتصال بالأداة SQL Server Management Studioحلول سريعة و لمحات برمجية --------------------------------التصدير إلى إكسل : طريقة أولى : طريقة بسطر واحد من الكود <<-->> طريقة ثانية : طريقة تحتاج إنشاء إجرائية مخزنةً تجهيز بيانات جدول بالصيغة XML تمهيداً لحفظها كملف <<-->> تصدير البيانات إلى ملفات نصية برمجياً إغلاق جميع الإتصالات المفتوحة بقاعدة بيانات محددة .. تمهيداً لاسترجاعها أو حذفها <<-->> الاستعلام بناء على وقت مخزن بالصيغة العربية ضمن حقل نصي ..حذف السجلات المتكررة و إبقاء عدد محدد منها في جدول.. <<-->> أسرع طريقة لحذف سجلات جدول كيف احصل على اسم جهازي والباسوورد باستخدام T-SQL <<-->> حشر أنواع الصور المختلفة في حقل من نوع Image باستخدام إجرائية مخزنة .كيف تعرف أنواع الصور المخزنة في حقل من نوع Image .. <<-->> إجرائيات مخزنة ببارامترات ديناميكية مفيدة جداً للاستعلامات استخدام رقم الحقل بدلاً من الإسم في عبارات الإستعلام <<-->> من هو أضخم الجداول في قاعدة بياناتي ؟معرفة زمن تنفيذ الإجرائيات ( لتختار الطريقة الأسرع بين إجرائياتك المخزنة ) <<-->> التعامل مع الـ Rules برمجياً الحصول على آخر صف في الجدول <<-->> قراءة ملفات XML باستخدام T-SQL برمجياً (مثال مرفق)سحب بيانات ملف إكسل إلى الـ SQL Server <<-->> تشفير النسخة الاحتياطية بكلمة مرور <<-->> التخلص من البيانات المكررة <<-->> حل مشكلة التاريخ الهجريDifferential Backup بالتعريف---------- لا إله إلا الله .. محمد رسول الله

أخوكم في الله..  Imad Ozone

#11

تفضل اخي الغالي جزاك الله كل (خير)

CREATE PROCEDURE add_Tables
@type_car nvarchar (25),
@Data_car date,
@body_number nvarchar (50),
@number_alloha nvarchar (20),
@Price_car nvarchar (50),

@name_albaya nvarchar (50),
@number_albaya nvarchar (25),

@Name_almstry nvarchar (50),
@number_almstry nvarchar (50),
as
Begin Tran
 
insert into ID_cars (type_car,Data_car,body_number,number_alloha,Price_car) values (@type_car,@Data_car,@body_number,@number_alloha,@Price_car)
insert into ID_customer (name_albaya,number_albaya)values (@name_albaya,@number_albaya)
insert into ID_customer2 (Name_almstry,number_almstry)  values (@Name_almstry,number_almstry)

 

if @@ERROR = 0
   Commit
else
begin
   Raiserror('عفوا حدث خطأ الرجاء اعادة المحاولة',16,1)
   Rollback
end
#12

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

 

 

@number_almstry nvarchar (50),

 

أزل الفاصلة من آخر العبارة السابقة

 

@number_almstry nvarchar (50)

 

تحياتي

دروس و كتب مفيدة----------------------كتيب الإجرائيات المخزنةتعرف على اللغة Transact SQL <<-->> كتيب عن تنصيب قواعد البيانات Sql Server باللغة العربية كتيب عن إنشاء قواعد البيانات في SQL Server باللغة العربية <<-->> درس مع الأمثلة عن المؤشرات و التعامل معها في الـ T-SQLالعبارات الشرطية و الحلقات في T-SQL <<-->> شرح لبعض الـ Extended Stored Procedure استخدام مكتبات الـ Dot Net الخاصة بك في الـ Sql Server 2005 <<-->> التعامل مع المصفوفات من خلال الـ T-SQLتعابير الجداول الشائعة في SQL Server 2005 <<-->>الاتصال بالأداة SQL Server Management Studioحلول سريعة و لمحات برمجية --------------------------------التصدير إلى إكسل : طريقة أولى : طريقة بسطر واحد من الكود <<-->> طريقة ثانية : طريقة تحتاج إنشاء إجرائية مخزنةً تجهيز بيانات جدول بالصيغة XML تمهيداً لحفظها كملف <<-->> تصدير البيانات إلى ملفات نصية برمجياً إغلاق جميع الإتصالات المفتوحة بقاعدة بيانات محددة .. تمهيداً لاسترجاعها أو حذفها <<-->> الاستعلام بناء على وقت مخزن بالصيغة العربية ضمن حقل نصي ..حذف السجلات المتكررة و إبقاء عدد محدد منها في جدول.. <<-->> أسرع طريقة لحذف سجلات جدول كيف احصل على اسم جهازي والباسوورد باستخدام T-SQL <<-->> حشر أنواع الصور المختلفة في حقل من نوع Image باستخدام إجرائية مخزنة .كيف تعرف أنواع الصور المخزنة في حقل من نوع Image .. <<-->> إجرائيات مخزنة ببارامترات ديناميكية مفيدة جداً للاستعلامات استخدام رقم الحقل بدلاً من الإسم في عبارات الإستعلام <<-->> من هو أضخم الجداول في قاعدة بياناتي ؟معرفة زمن تنفيذ الإجرائيات ( لتختار الطريقة الأسرع بين إجرائياتك المخزنة ) <<-->> التعامل مع الـ Rules برمجياً الحصول على آخر صف في الجدول <<-->> قراءة ملفات XML باستخدام T-SQL برمجياً (مثال مرفق)سحب بيانات ملف إكسل إلى الـ SQL Server <<-->> تشفير النسخة الاحتياطية بكلمة مرور <<-->> التخلص من البيانات المكررة <<-->> حل مشكلة التاريخ الهجريDifferential Backup بالتعريف---------- لا إله إلا الله .. محمد رسول الله

أخوكم في الله..  Imad Ozone

#13

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

An unhandled exception of type 'System.IndexOutOfRangeException' occurred in Car Archive.exe

Additional information: الفهرس خارج حدود الصفيف.
#14

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

#15

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

1
#16

تفضل اخي بارك الله فيك

  private void button1_Click(object sender, EventArgs e)
        {
            cmd = new SqlCommand("add_Tables", cn);
            cmd.CommandType = CommandType.StoredProcedure;
               SqlParameter[] Param = new SqlParameter[9];
            Param[0] = new SqlParameter("@type_car", SqlDbType.NVarChar);
            Param[0].Value = textBox7.Text;

            Param[2] = new SqlParameter("@Data_car", SqlDbType.Date);
            Param[2].Value = textBox6.Text;

            Param[3] = new SqlParameter("@body_number", SqlDbType.NVarChar,50);
            Param[3].Value = textBox9.Text;

            Param[4] = new SqlParameter("@number_alloha", SqlDbType.NVarChar,50);
            Param[4].Value = textBox10.Text;

            Param[5] = new SqlParameter("@Price_car", SqlDbType.NVarChar,50);
            Param[5].Value = textBox13.Text;

            Param[6] = new SqlParameter("@name_albaya", SqlDbType.NVarChar,50);
            Param[6].Value = textBox1.Text;

            Param[7] = new SqlParameter("@number_albaya", SqlDbType.NVarChar,25);
            Param[7].Value = textBox3.Text;

            Param[8] = new SqlParameter("@Name_almstry", SqlDbType.NVarChar,50);
            Param[8].Value = textBox2.Text;

            Param[9] = new SqlParameter("@number_almstry", SqlDbType.NVarChar,50);
            Param[9].Value = textBox4.Text;

            cmd.Parameters.AddRange(Param);
            cn.Open();
            cmd.ExecuteNonQuery();
            cn.Close();
            MessageBox.Show("تمت الاضافة بنجاح");

تم تعديل هذه المشاركة بواسطة "طلال" في 8 فبراير 2014 في 11:12

#17

جرب تعديل هذا الكود

  private void button1_Click(object sender, EventArgs e)
        {
//SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ToString());  
try
            {
cmd = new SqlCommand("add_Tables", cn);
            cmd.CommandType = CommandType.StoredProcedure;
               SqlParameter[] Param = new SqlParameter[9];
            Param[0] = new SqlParameter("@type_car", SqlDbType.NVarChar);
            Param[0].Value = textBox7.Text;

            Param[2] = new SqlParameter("@Data_car", SqlDbType.Date);
          Param[2].Value =Convert.ToDateTime(textBox6.Text.ToString()).Date;

            Param[3] = new SqlParameter("@body_number", SqlDbType.NVarChar,50);
            Param[3].Value = textBox9.Text;

            Param[4] = new SqlParameter("@number_alloha", SqlDbType.NVarChar,50);
            Param[4].Value = textBox10.Text;

            Param[5] = new SqlParameter("@Price_car", SqlDbType.NVarChar,50);
            Param[5].Value = textBox13.Text;

            Param[6] = new SqlParameter("@name_albaya", SqlDbType.NVarChar,50);
            Param[6].Value = textBox1.Text;

            Param[7] = new SqlParameter("@number_albaya", SqlDbType.NVarChar,25);
            Param[7].Value = textBox3.Text;

            Param[8] = new SqlParameter("@Name_almstry", SqlDbType.NVarChar,50);
            Param[8].Value = textBox2.Text;

            Param[9] = new SqlParameter("@number_almstry", SqlDbType.NVarChar,50);
            Param[9].Value = textBox4.Text;

            cmd.Parameters.AddRange(Param);
            cn.Open();
            cmd.ExecuteNonQuery();
           
            MessageBox.Show("تمت الاضافة بنجاح");
 }
 catch (SqlException ex)
            {
                MessageBox.Show(ex.Message);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                cn.Close();
            }
}

تم تعديل هذه المشاركة بواسطة KARIMSOFT في 15 فبراير 2014 في 16:27

1
#18

اخ انا عملت المطلوب وظهر لي خطاء بالبرام 2

Error    1    'System.Convert' does not contain a definition for 'ToDate'    c:\users\dell\desktop\car archive\car archive\form2.cs    122    38    Car Archive
 

#19

اتمنى التفاعل

#20

ومازلت انتظر الرد !!

#21

اسف لقد تم تعديل الكود في المشاركة السابقة استخدم ToDateTime بدل ToDate

1
#22

عند تنفيذ البرنامج والكتابة بالتكست الخاص بالتاريخ تظهر لي خطاء

 

لم يتم التعرف على السلسلة كقيمة Date Time صالحة

#23

ارفق البرنامج

1
#24

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

#25
"طلال" كتب:

 

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

An unhandled exception of type 'System.IndexOutOfRangeException' occurred in Car Archive.exe

Additional information: الفهرس خارج حدود الصفيف.

الخطأ فى فهرس المصفوفة تبدأ بصفر وتنتهى ب 8 يبدو انك تجاهلت الاندكس 1

1

VB.NET and C# Comparison

http://www.harding.edu/fmccown/vbnet_csharp_comparison.html

002.gif

=-=-=-=-=-=-=
ذو العلم يشقى فى النعيم بعلمه .:. واخو الجهالة فى الشقاوة ينعم
=-=-=-=-=-=-=
يا من بدنياه اشتغل . قد غره طول الأمل . فالموت يأتى بغتة . والقبر صندوق العمل
=-=-=-=-=-=-=
ان لم تستطع ان تجد ما تفعله فافعل ما لم تسطع ان تجده

screen_shot_2011-05-19_at_12.44.49_pm.pn

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

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

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

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

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