28-03-23, 04:39 PM
السلام عليكم ورحمة الله
يقول الله تعالي في كتابه الكريم (قَالُوا سُبْحَانَكَ لَا عِلْمَ لَنَا إِلَّا مَا عَلَّمْتَنَا ۖ إِنَّكَ أَنتَ الْعَلِيمُ الْحَكِيمُ) صدق الله العظيم
اليوم انشر مشاركة سابقة لل اخ ابوبكر سويدان عمله بال vb
اليوم، سأكتب عن الـDataTable، وأتمنى لكم الفائدة..
الكلاس DataTable
ويمثل جدولاً واحداً ضمن الـDataSet. وكل جدول لا بد أن تتوفر فيه الكلاسات: DataColumn وDataRow، فللجدول حقول (أعمدة Columns) وسجلات (صفوف Rows). وهذا الكلاس يتبع مباشرة لفضاء الأسماء System.Data.
إنشاء جدول Creating a DataTable
هذا الكلاس يتبع مباشرة لفضاء الأسماء System.Data، ولإنشاء جدول نقوم بتعريف كائن DataTable، وبشكل اختياري يمكننا منحه اسماً:
في السطر السابق تم تعريف كائن يمثل جدولاً دون أن نسميه، وفي السطر التالي، نقوم بتعريف كائن يمثل جدولاً باسم Customers:
إضافة DataTable إلى DatatSet
يضاف الجدول DataTable المنشأ حديثاً إلى الـDataSet بالصورة التالية:
وذلك من خلال الوظيفة Add التابعة للخاصية Tables التابعة للـDataSet.
أهم خصائص DataTable:
الخاصية TableName: ومن خلالها يمكن ضبط / استرجاع اسم الـDataTable.
الخاصية DataSet: ومن خلالها يمكن استرجاع الـDataSet التي يتبعها هذا الـDataTable.
الخاصية PrimaryKey: ومن خلالها يمكن ضبط / استرجاع مصفوفة من الأعمدة أو الحقول التي تعمل كمفاتيح أساسية للـDataTable. وسأشرح عنها عند الحديث عن DataColumn.
الخاصية Rows: ومن خلالها يمكن استرجاع تجمع الصفوف التي تتبع هذا الـDataTable. وسأشرح عنها عند الحديث عن DataRow.
أهم وظائف DataTable:
الوظيفة Clear: وتقوم بمسح محتويات الجدول من البيانات فقط، ولا تحذف تركيبته.
الوظيفة Clone: وتقوم بنسخ تركيبة الجدول دون البيانات.
الوظيفة Copy: وتقوم بنسخ تركيبة ومحتويات الجدول إلى جدول آخر .
الوظيفة Reset: وتقوم بإعادة ضبط الجدول إلى حالته القديمة. وحذف كافة البيانات المخزنة فيه، بالإضافة إلى الفهارس والعلاقات والأعمدة.
الوظيفة Select: وتقوم باسترجاع مصفوفة تمثل كافة الـDataRows بالجدول.
يقول الله تعالي في كتابه الكريم (قَالُوا سُبْحَانَكَ لَا عِلْمَ لَنَا إِلَّا مَا عَلَّمْتَنَا ۖ إِنَّكَ أَنتَ الْعَلِيمُ الْحَكِيمُ) صدق الله العظيم
اليوم انشر مشاركة سابقة لل اخ ابوبكر سويدان عمله بال vb
اليوم، سأكتب عن الـDataTable، وأتمنى لكم الفائدة..
الكلاس DataTable
ويمثل جدولاً واحداً ضمن الـDataSet. وكل جدول لا بد أن تتوفر فيه الكلاسات: DataColumn وDataRow، فللجدول حقول (أعمدة Columns) وسجلات (صفوف Rows). وهذا الكلاس يتبع مباشرة لفضاء الأسماء System.Data.
إنشاء جدول Creating a DataTable
هذا الكلاس يتبع مباشرة لفضاء الأسماء System.Data، ولإنشاء جدول نقوم بتعريف كائن DataTable، وبشكل اختياري يمكننا منحه اسماً:
PHP كود :
DataTable t = new DataTable();
في السطر السابق تم تعريف كائن يمثل جدولاً دون أن نسميه، وفي السطر التالي، نقوم بتعريف كائن يمثل جدولاً باسم Customers:
PHP كود :
DataTable customer = new DataTable("customers");
- إذا لم نحدد اسماً للجدول، يقوم ADO.NET بتسميته Table1، والجدول الذي يليه Table2 وهكذا.
- بعد إنشاء كائن الجدول، يمكننا تعديل قيمة الخاصية TableName لإعطائه اسماً أو تعديله، كما يمكننا التعامل مع بقية الخصائص والوظائف والأحداث.
إضافة DataTable إلى DatatSet
يضاف الجدول DataTable المنشأ حديثاً إلى الـDataSet بالصورة التالية:
PHP كود :
DataSet EmployeesDataset = new DataSet("Employees DataSet");
DataTable personalinfotable = new DataTable();
EmployeesDataset.Tables.Add(personalinfotable);
وذلك من خلال الوظيفة Add التابعة للخاصية Tables التابعة للـDataSet.
أهم خصائص DataTable:
الخاصية TableName: ومن خلالها يمكن ضبط / استرجاع اسم الـDataTable.
PHP كود :
DataTable firsttable = new DataTable();
MessageBox.Show(firsttable.TableName);
firsttable.TableName = "Nationalities";
MessageBox.Show(firsttable.TableName);
PHP كود :
DataSet employeesdataset = new DataSet("Employees DataSet");
DataTable personalinfotable = new DataTable("personal info");
employeesdataset.Tables.Add(personalinfotable);
MessageBox.Show(personalinfotable.DataSet.DataSetName);
الخاصية Rows: ومن خلالها يمكن استرجاع تجمع الصفوف التي تتبع هذا الـDataTable. وسأشرح عنها عند الحديث عن DataRow.
أهم وظائف DataTable:
الوظيفة Clear: وتقوم بمسح محتويات الجدول من البيانات فقط، ولا تحذف تركيبته.
PHP كود :
personalinfotable.Clear();
PHP كود :
DataTable personalinfotable = new DataTable();
personalinfotable.TableName = "original table";
DataTable clonedtable = new DataTable();
clonedtable = personalinfotable.Clone();
MessageBox.Show(clonedtable.TableName);
PHP كود :
DataTable personalinfotable = new DataTable();
personalinfotable.TableName = "original table";
DataTable copiedtable = new DataTable();
copiedtable = personalinfotable.Clone();
MessageBox.Show(copiedtable.TableName);
PHP كود :
personalinfotable.Reset();
PHP كود :
DataSet CompanyDataSet = new DataSet("Company");
DataTable TheSupplierTable = CompanyDataSet.Tables["Suppliers"];
DataRow[] SelectedRows = TheSupplierTable.Select();