PDA

View Full Version : آموزش: Clone کردن یک Table Schema



Alireza.AM
سه شنبه 12 دی 1391, 00:20 صبح
گاهی نیاز داریم که یک جدول با ساختار جدولی دیگر بسازیم، در چنین شرایطی جداول ما Table Schema کاملا مشابه هم دارند، یعنی فیلدهای یکسان و جزئیات یکسان.

روش اول (VB)

فرض کنیم که Table object الگوی ما با نام DT1 موجود است

dim DT2 as new datatable = DT1.Clone()

کد فوق یک table object جدید به نام DT2 با ساختار DT1 می سازد.


روش دوم (VB)

فرض کنیم که اصلا شیئ جدول الگو در code behind وجود ندارد و تنها خود جدول در SQL Server موجود می باشد و ما نیاز به یک Table Object با ساختار آن جدول موجود در SQL Server داریم:


Dim dt as new datatable
Dim ad as new sqlclient.sqldataadapter(“select top 0 * from MyTable”,”connection string”)
Ad.fill(tb)

ملاحظه کردید که top 0 کمک می کند که فقط ساختار منتقل شود.


روش دریافت اطلاعات Table Schema
(#C)

اگر نیاز داشته باشیم که اطلاعاتی از ساختار یک جدول بدست بیاوریم می توانیم از Method های Datareader استفاده کنیم، در مثال زیر مجموعه از این اطلاعات را در یک Grid نمایش داده ام.

SqlConnection cn = new System.Data.SqlClient.SqlConnection("xxx");
SqlCommand cmd = new SqlCommand("Select * from categories", cn);
cn.Open();
SqlDataReader dr = cmd.ExecuteReader(System.Data.CommandBehavior.Sche maOnly);
System.Data.DataTable tbl = dr.GetSchemaTable();
cn.Close();
GridView1.DataSource = tbl;
GridView1.DataBind();