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

سؤال كيف يمكن استيراد البيانات من اكسل الى اوراكل

مغلق
بدأه lana1 في 8 فبراير 2008 · 6 رد · 3,241 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

سؤال كيف يمكن استيراد البيانات من اكسل الى اوراكل وكيف اصدر من اوراكل الى اكسل

الرجاء الرد من المحترفي بلغة السي شارب

ومشكورين

#2

بنسبه لستيراد البيانات الى الاوراكل فهو سهل جداً

وهذا الدرس يتكلم عن القراء من ملف Excel

http://davidhayden.com/blog/dave/archive/2...05/26/2973.aspx

لكن يوجد شي اخر بعد ان تضع البيانات داخل DataSet فمن السهل ان تعمل لها insert الى دخل الجدول المحدد

وبنسبه للتصدير الى ملف الاكسل هذا الرابط راح يفيدك

http://www.dotnetspider.com/kb/Article2058.aspx

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

بس في البدايه تاكد من طريقه الاتصال بقواعد الاوركال لن لا يوجد فرق بينها والقواعد الثانيه انا استخدم Access و SQL

ولا اعتقد انه يجد فرق لن الاوركل تصنف من ضمن OLEDB .

تحياتي لك

#3

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

مع برنامج صغير للاستيراد والتصدير ولك جزيل الشكر

#4

هل من ردود الروابط غير مفيدة؟؟؟

#5

???

#6

في البدايه احب ان اعتذر على سبب تاخري في الرد عليك وذلك لانشغالي

وهذا المثال الذي وعدتك به في وسوف اقوم بشرح اهم الاوامر فيه

string connString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
					"Data Source=" + filename + ";Extended Properties=Excel 8.0;";

هذا هو متغير الاتصال بملف الاكسس الذي يوجد لديناء يعني نبدل fileName الى الى مسار ملف الاكسل وانا استخدمت داله تقوم بهذا العمل

امرر لها مسار ملف الاكسل وايضاُ اسم sheet وترجع لنا بيانات من نوع DataTable وفي مثلنا هذا سوف يكون اسم القاهد Lana1 و ملف

الاكسل اسمه Book1.xls والبيانات حقنا تكون موجوده في Sheet1 التي تحتوي على البيانات والتي سوف نعمل امر select منها ونعملها

كانها جدول وهذا الكود يوضح الامر

string query = string.Format( "SELECT * FROM [{0}]", sheetName );

و وبهذا تكون الداله ارجعت لنا Table الذي يحتوي على البيانات في ملف الاكسل

والان نجي نعمل لهذا Table او مايسمى datatable بعرض في الداتا جريد ويكون هذا الامر

DataTable dt=GetDataTableFromExcel(@"book1.xls","Sheet1");

بس في المثال المرفق انا عرفت DataTable خارج الاحدث حق زر GetData والسبب اني سوف استخدمها

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

التي سبق وذكرنها وراح تسئلني سؤال لماذا ذكرت المتغير Count الموجود في الاسفل

dataGrid1.DataSource=dt;
Count=dt.Rows.Count;

هذا المتغير يقوم بتسجل عدد الصفوف الموجوده في هذا الجدول والان نجي الى الاجزء الاهم في هذا المثال وهو عمل

insert للبيانات المعروضه في الداتا جريد وهي سهله جداً نقوم بتعرف مصفوفتين الاولى من نوع Integer والاخرى

من نوع string ممكن تقول ليش مصفوفتين اقولك ليش لن لا يوجد عندنا في قاعد البياناتLana1 سوى جدول واحد وهو STD

ويحتوي على عمودين ID و Name الاول نوعه نمبر والثاني نص يعني نعمل مصفوفات على عدد الاعمده لكي نحفظ فيها البيانات

int []ID=new int[Count];
string []Name=new string[Count];

ومن ثم نعمل لها اضافه الى الجدول اوكي الان لاحظ هذا الكود

for(int i=0;i<Count;i++)
{
ID=Convert.ToInt32(dt.Rows["ID"]);
Name=dt.Rows["Name"].ToString();
OleDbCommand dm=new OleDbCommand("insert into STD(ID,Name)values(@ID,@Name)",cn);
dm.Parameters.Add("@ID",ID);
dm.Parameters.Add("@Name",Name);
cn.Open();
dm.ExecuteNonQuery();
cn.Close();
}

الان كما تلاحظ اني عمله لوب على عدد الصفوف التي داخل الداتا جريد والتي عرفنا عددها من المتغير Count

وفي هذا الكود قمت باضافه العناصر من DataTable الى المصفوفات التي عرفتها مسبقاً والتي بدورها سوف تضم كل العناصر التي في الداتا جيرد

ID=Convert.ToInt32(dt.Rows["ID"]);
Name=dt.Rows["Name"].ToString();

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

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

والمثال مرفق

تحياتي لك

Excel.rar

#7

thanck you

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

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

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

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

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

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