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

استخدام sqldatasource في اضافة معلومات لجدولين

بدأه AboOmar1980 في 2 يونيو 2010 · 19 رد · 1,684 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

الصراحة أبغى أعرض عليكم مشكلة أظن أنها بسيطة

وهي اضافة المعلومات لجدولين مرتبطة ببعض في قاعدة بيانات sqlserver

من صفحة ASP.NET باستخدام الامر insert في sqldatasource

#2

السؤال اخى غير واضح

يعنى تبغى جملتين insert متتاليتين مثلا ؟؟؟

او طلبك بيكون مثلا انك بتريد اضافة عضو جديد فى جدول الاعضاء .. وباستخدام الـ ID الخاص به ستضيف بياناته فى جدول آخر ؟؟؟؟؟؟

برجاء التوضيح

لله في الآفاق آيات لعـــل = أقلهـــا هو ما إليه هداكا

ولعل ما في النفس من آياته = عجبٌ عجابٌ لو ترى عيناكا

والكون مشحون بأسرار إذا = حاولت تفسيراً لهــا أعياكا

#3

شكراً أخي ماذا بعد على مرورك على الموضوع

المطلوب مثل ماوضحت أرجوا المساعدة وشكرأً

#4

حسنا .. تخيل ان عندنا


INSERT INTO dbo.emp(empName, Salary)
Values('Muhammed', 10000)
INSERT INTO dbo.emp_details(empId, address)
Values(SCOPE_IDENTITY(), 'Egypt')

الجملة السابقة .. تعنى انك عملت insert لموظف جديد فى الجدول .. وباستخدام الـ ID الخاص به .. باعتبار ان حقل empid هو identical و auto generated

وبعد اتمام عملية الإضافة .. استخدمت الـ ID الخاص به .. وهى دالة SCOPE_IDENTITY واللى بتحصل اخر رقم تم توليده اوتوماتيكيا .. وقمت بإضافة العنوان الخاص بالموظف بدلالة هذا الـ ID

هل واضح ؟

لله في الآفاق آيات لعـــل = أقلهـــا هو ما إليه هداكا

ولعل ما في النفس من آياته = عجبٌ عجابٌ لو ترى عيناكا

والكون مشحون بأسرار إذا = حاولت تفسيراً لهــا أعياكا

#5

شكراً أخي

هذا ممكن لو استخدمت

sqldatasource.Insert

كيف أطبق الكود في ال sqldatasource.Insert رقم 2

يعني مثلا

الاول

sdsEmp.Insert

الثاني

sdsContriy.insert

كيف أكتب الكود في الثانية حيث أني سجلت البرامترات من خلال خصائص sqldatasource

يعني بعد إضافة الموظف أضيف id الدولة مع بياناته بدون استخدام القائمة

وكمان أخي لو كثرنا أسئلة ممكن كيف أعرض ID بعد الحفظ في الصفحة

أرجو اني وضحت المطلوب والشكر موصول لك أولاً وأخراً

تم تعديل هذه المشاركة بواسطة AboOmar1980 في 3 يونيو 2010 في 19:13

#6

أرجوا التفاعل من أعضاء هذا المنتدى المعروف بالعلم والمعرفة

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

حيث تحديد Parameters من خلال Properties لـ Sqldatasource عند الخاصية InsertQuery

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

Test.rar

#7

معقول أكثر من 50 مشاهدة ولم يتم معرفة الحل ؟أم أني لم أوضح المطلوب

#8

السلام عليكم

اخي الكريم

انا شفت المثال تبعك

اخي انت ليش منزل 2 sql tools

هذا خطأ

استناني شوي راح اوضحلك الامر بمثال

#9

تفضل مثال

ان شاء الله يفيدك

test2.rar

#10

شكراً لأخوان

الحمد الله تم الحل حيث عبارتين Insert في أداة Sqldatasource حسب طريقة الاخ وماذا بعد والحمد الله نجحت

لكن كيف أعرض ID في labal ارجوا الرد وشكراً للجميع

#11

من الداتا بيس اعمل لـ

SELECT MAX(ID) FROM emp

هيرجع بأكبر ID وهو اخر موظف مثلا تم اضافته .. واعرضه فى اى مكان تريد :) .. وعذرا على التأخير

تم تعديل هذه المشاركة بواسطة وماذا بعد؟ في 5 يونيو 2010 في 14:54

لله في الآفاق آيات لعـــل = أقلهـــا هو ما إليه هداكا

ولعل ما في النفس من آياته = عجبٌ عجابٌ لو ترى عيناكا

والكون مشحون بأسرار إذا = حاولت تفسيراً لهــا أعياكا

#12

شكرأً ياأخي وماذا بعد

لكن كيف أعرض البيانات المجلوبة من الداتا بيس في Label أو TextBox يعني كل قيمة فيما يناسبها والشكر موصول لك مقدماً

#13

تخيل ان عندك

function

كالتالى

public DataTable GetAllEmp()
    {

        _Com = new SqlCommand();
        _Com.Connection = conn;
        _Com.CommandType = CommandType.StoredProcedure;
        _Com.CommandText = "usp_GetAllEmp";
        SqlDataAdapter adapt = new SqlDataAdapter(_Com);
        DataTable _dt = new DataTable();
        conn.Open();
        adapt.Fill(_dt);
        conn.Close();

        return _dt;
    }

وبفرض ان الدالة بالاعلى .. اللى راجع منها بيكون جدول فيه صف واحد فقط ،،،

وانت من الكود بتستخدمها كالتالى

DataTable _dt = GetAllEmp()

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

وباعتبار أن الـ Label اسمه lblEmployeeName

فتضيف عليه النص كالتالى

lblEmployeeName.Text = _dt.Rows[0]["اسم الحقل - العمود"].ToString()

ارجو ان يكون الجواب واضح :)

بالتوفيق

لله في الآفاق آيات لعـــل = أقلهـــا هو ما إليه هداكا

ولعل ما في النفس من آياته = عجبٌ عجابٌ لو ترى عيناكا

والكون مشحون بأسرار إذا = حاولت تفسيراً لهــا أعياكا

#14

شكرا لك يااخي

لكن المطلوب عن طريق الاداة sqldatasource

يلت تبين الحل لاني أحاول وماصلت لطريقة لعرضها في TextBox

#15

ملحوظة : اممممـ ،، لماذا تعمل كل شئ بـ SqlDataSource ؟

-------------

حتى تقوم بعمل Bind على TextBox من SQLDataSource مباشرة .. تحتاح ل Databound Control مثل الـ GridView والـ DetailsView او ما سنقوم باستخدامه هنا وهو الـ FormView

والـ FormView يتعبر احد ادوات Databound الموجودة فى الـ ASP.Net يعنى مثله مثل الـ GridView لكن يختلف عنها أنه يعرض عنصر واحد فقط فى المرة .. وهذا ما تحتاجة انت فى المثال الحالى

فبعد أن تقوم بكتابة الـ Query فى الـ SqlDatasource والذى يقوم باستعادة اخر ID .. قم بإضافة FormView من قائمة الأدوات على الصفحة ، وحدد الـ DataSource الخاص بها حتى يكون هو الـ SqlDataSource

الان سيتم عرض الآى دى على الـ FormView وكأنه على Label .. لكن أنت تحتاج ان يكون فى TextBox .. من الـ SmartBox الخاص بالـ FormView قم باختيار Edit Template واضف TextBox للـ ItemTemplate

وستجد ان الـ TextBox معه سهم صغير وهو SmartBox وتحدد منه الـ DataBind فسيتم عرض الـ ID فى الـ TextBox

ارجو ان يكون الشرح واضح .. بالتوفيق

لله في الآفاق آيات لعـــل = أقلهـــا هو ما إليه هداكا

ولعل ما في النفس من آياته = عجبٌ عجابٌ لو ترى عيناكا

والكون مشحون بأسرار إذا = حاولت تفسيراً لهــا أعياكا

#16

الشرح واضح كفيت ووفيت

لكن ياأخي الامر محير ان يمكن التحكم ب Parameters من خلال Properties لـ Sqldatasource عند الخاصية InsertQuery وكذلك UpdateQuery

لكن SelectQuery حاولت لكن ما وجدت حل لكن تأمل هذا الكود

Me.SqlOwners.FilterExpression = " [OwnerName] LIKE '%" & Trim(txtSearch.Text

) & "%'"

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

ممكن نحاول في الحل سوياً وشكراً لك حقيقة ماقصرت والله يجزاك خير

#17

اعطيه الـ Parameter فى الـ Query نفسه

بمعنى

SqlDataSource1.SelectCommand = "SELECT * FROM emp WHRER ID = " + intID

لله في الآفاق آيات لعـــل = أقلهـــا هو ما إليه هداكا

ولعل ما في النفس من آياته = عجبٌ عجابٌ لو ترى عيناكا

والكون مشحون بأسرار إذا = حاولت تفسيراً لهــا أعياكا

#18
AboOmar1980 كتب:

شكراً لأخوان

الحمد الله تم الحل حيث عبارتين Insert في أداة Sqldatasource حسب طريقة الاخ وماذا بعد والحمد الله نجحت

لكن كيف أعرض ID في labal ارجوا الرد وشكراً للجميع

السلام عليكم

أخي الكريم : مثل اي كنترول تأخذ القيمة ID و تضعها في text في الكود يعني :

labalName.text = value

مثال :

labal1.text = Id

أرجوالمتابعة من أصحاب الخبرة كلامي صحيح ...

#19
اقتباس
أخي الكريم : مثل اي كنترول تأخذ القيمة ID و تضعها في text في الكود يعني :

كلامك صحيح اخى .. لكن الاخ ابو عمر يقصد ان القيمة اللى راجعه مش متغير .. انما SQLDataSource .. هذا ما قصده .. والله اعلم

لله في الآفاق آيات لعـــل = أقلهـــا هو ما إليه هداكا

ولعل ما في النفس من آياته = عجبٌ عجابٌ لو ترى عيناكا

والكون مشحون بأسرار إذا = حاولت تفسيراً لهــا أعياكا

#20

كم أنتم رائعين ....

وفقكم الله فقد أفدتوني كثيرا بهذا النقاش والتعاون الرائع

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